/* Phase 1 shared header/footer styles; no external scripts or fonts. */
.ee-header { border-bottom: 1px solid #e8e8e9; position: relative; z-index: 10; }
.ee-header-inner { min-height: 90px; padding: 16px clamp(20px,4vw,48px); gap: clamp(12px,2vw,32px); }
.ee-header-logo img { width: min(220px,36vw); height: auto; }
.ee-header-navigation { font-weight: 600; }
.ee-header-actions { gap: 16px; }
.ee-header-search { max-width: 220px; }
.ee-header a, .ee-footer a { text-underline-offset: .25em; }
.ee-header :where(a,button,input):focus-visible, .ee-footer :where(a,button,input):focus-visible { outline: 3px solid #005EB8; outline-offset: 3px; }
.ee-footer { padding: 64px clamp(20px,4vw,48px) 24px; }
.ee-footer-inner { gap: 32px; }
.ee-footer-title { margin-block: 0 8px; }
.ee-footer-divider { opacity: .28; margin-block: 36px 22px; }
.ee-footer .wp-block-navigation-item__content { color: #fff; }
@media (max-width: 900px) {
  .ee-header-inner { min-height: 72px; }
  .ee-header-search { display:none; }
  .ee-header-actions { gap: 12px; }
  .ee-footer-inner { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 480px) {
  .ee-header-logo img { max-width: 156px; }
  .ee-header-inner { gap: 8px; }
}

/* Phase 1 visual refinement after 1920x1080 screenshot review. */
.ee-header-inner { box-sizing: border-box; }
.ee-header-inner > .wp-block-site-logo { flex: 0 0 auto; }
.ee-header-inner > .ee-header-navigation { flex: 0 1 auto; }
.ee-header-inner > .ee-header-actions { flex: 0 1 auto; min-width: 0; }
.ee-header-search { width: clamp(168px, 13vw, 230px); max-width: none; min-width: 0; }
.ee-header-search .wp-block-search__inside-wrapper { display: flex; min-width: 0; }
.ee-header-search .wp-block-search__input { box-sizing: border-box; min-width: 0; width: 100%; border: 1px solid #d8dadd; border-radius: 8px 0 0 8px; padding: 9px 12px; font: inherit; }
.ee-header-search .wp-block-search__button { margin-left: 0; border-radius: 0 8px 8px 0; background: #202221; color: #fff; border: 1px solid #202221; }
.ee-header :where(a,button,input):focus-visible,
.ee-footer :where(a,button,input):focus-visible,
.ee-home :where(a,button,input):focus-visible { outline: 3px solid #005EB8; outline-offset: 3px; }
.ee-home { padding-bottom: clamp(48px, 7vw, 104px); }
.ee-home-hero { padding-block: clamp(72px, 8vw, 132px) clamp(64px, 7vw, 104px); }
.ee-home-hero h1 { max-width: 13ch; line-height: 1.05; letter-spacing: -.018em; margin-bottom: 22px; }
.ee-home-hero p { max-width: 650px; font-size: clamp(17px, 1.65vw, 22px); line-height: 1.55; }
.ee-home-hero .wp-block-buttons { margin-top: 32px; }
.ee-home-hero .wp-block-button__link {
  display: inline-flex; align-items: center; min-height: 48px;
  background: #EA8439 !important; color: #202221 !important;
  border-radius: 10px; padding: 12px 28px; font-weight: 700;
  text-decoration: none;
}
.ee-home-hero .wp-block-button__link:hover { background: #F7AD4A !important; }
.ee-home-products { padding-inline: clamp(20px, 3vw, 48px); }
.ee-home-products h2 { margin-bottom: 28px; }
.ee-home-products .wc-block-product-template { gap: 24px; }
.ee-home-products :is(.wc-block-components-product-image, .wc-block-grid__product-image) img {
  object-fit: contain; width: 100%; height: auto;
}
.ee-home-worlds { padding-top: clamp(60px, 7vw, 104px); }
@media (max-width: 1100px) {
  .ee-header-inner { gap: 16px; }
  .ee-header-search { display: none; }
}
@media (max-width: 780px) {
  .ee-home-hero { padding-block: 64px; }
  .ee-home-products .wc-block-product-template { gap: 16px; }
}


/* Editorial homepage: CSS-only visual structure; image assets pending approval. */
.ee-home{--ee-ink:#202221;--ee-orange:#EA8439}
.ee-home-section{padding:clamp(54px,7vw,96px) clamp(20px,4vw,48px)}
.ee-eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:700}
.ee-editorial-hero{background:linear-gradient(115deg,#F1F1F2,#fff 65%,#f8e7d9);min-height:600px;display:flex;align-items:center}
.ee-editorial-hero__inner{width:100%;padding:clamp(64px,8vw,136px) clamp(20px,4vw,48px)}
.ee-editorial-hero h1{max-width:15ch;margin:16px 0 22px;line-height:1.05}
.ee-editorial-hero p:not(.ee-eyebrow){max-width:540px}
.ee-editorial-hero .wp-block-buttons{margin-top:28px}
.ee-home .wp-block-button__link{display:inline-flex;align-items:center;min-height:48px;border-radius:10px;background:#EA8439!important;color:#202221!important;padding:12px 26px;font-weight:700}
.ee-home .wp-block-button__link:hover{background:#F7AD4A!important}
.ee-hero-notice{margin-top:48px;font-weight:600}
.ee-worlds-grid{gap:16px;margin-top:40px}
.ee-world{min-height:400px;display:flex;align-items:end;border-radius:16px;overflow:hidden;background:#202221;color:#fff}
.ee-world--plates{background:linear-gradient(150deg,#3C8DB9,#082744)}
.ee-world--binders{background:linear-gradient(150deg,#202221,#4e433d)}
.ee-world--glass{background:linear-gradient(150deg,#005EB8,#082744)}
.ee-world__content{padding:32px;width:100%;box-sizing:border-box}
.ee-world__content :is(h3,p,a){color:#fff}
.ee-world__content h3{font-size:clamp(29px,2.8vw,43px);margin:0 0 10px}
.ee-world__content a{font-weight:700;text-underline-offset:5px}
.ee-highlights{padding-top:0}
.ee-highlights__empty{background:#F1F1F2;border-radius:12px;padding:32px}
.ee-product-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px;padding:0;list-style:none}
.ee-product-card{min-width:0}
.ee-product-card__link{text-decoration:none;color:#202221}
.ee-product-card__image{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1;border-radius:12px;overflow:hidden;background:#F1F1F2}
.ee-product-card__image img{width:100%;height:100%;object-fit:contain}
.ee-product-card__name{display:block;margin-top:12px;line-height:1.45;font-weight:600}
.ee-product-card__price{display:block;margin-top:4px;font-weight:700}
.ee-stories{background:#F1F1F2}
.ee-stories__inner{padding:clamp(40px,5vw,72px) clamp(20px,4vw,48px)}
.ee-story{align-items:stretch;gap:0;margin:0!important;min-height:320px;background:#fff}
.ee-story--reverse{flex-direction:row-reverse}
.ee-story__visual{min-height:310px;background:linear-gradient(135deg,#202221,#3C8DB9)}
.ee-story__visual--binder{background:linear-gradient(135deg,#202221,#EA8439)}
.ee-story__visual--glass{background:linear-gradient(135deg,#082744,#70BAFF)}
.ee-story__copy{padding:clamp(32px,4vw,60px);display:flex;flex-direction:column;justify-content:center}
.ee-story__copy h3{font-size:clamp(30px,3vw,45px);margin:10px 0}
.ee-story__copy a{color:#005EB8;font-weight:700}
.ee-values-grid{margin-top:40px;gap:32px}
.ee-closing{background:#202221;color:#fff;padding:clamp(70px,8vw,120px) 20px}
.ee-closing h2{color:#fff}
.ee-closing .wp-block-buttons{margin-top:24px}
@media(max-width:1100px){.ee-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:781px){.ee-editorial-hero{min-height:auto}.ee-worlds-grid{flex-direction:column}.ee-world{min-height:300px}.ee-story,.ee-story--reverse{flex-direction:column}.ee-story__visual{min-height:260px}.ee-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}


/* Layout-width correction: prevent Raft's narrower content constraint
   from collapsing explicitly wide homepage sections. */
.ee-home > .wp-block-group.alignwide,
.ee-home .ee-editorial-hero > .ee-editorial-hero__inner,
.ee-home .ee-stories > .ee-stories__inner {
  box-sizing:border-box;
  width:min(100% - 40px, 1440px);
  max-width:1440px;
  margin-inline:auto;
}
.ee-home .ee-editorial-hero__inner > :where(h1,p,.wp-block-buttons) {
  margin-left:0;
}
.ee-editorial-hero__inner {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.ee-editorial-hero__inner > * { width:auto; }
.ee-editorial-hero__inner > :where(h1,p) { max-width:620px; }
.ee-editorial-hero .wp-block-buttons { align-self:flex-start; }
.ee-home .ee-worlds-grid, .ee-home .ee-values-grid,
.ee-home .ee-stories__inner > .wp-block-columns {
  width:100%;max-width:none;
}
.ee-home .ee-worlds-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr)); }
.ee-home .ee-worlds-grid > .wp-block-column { margin:0; }
.ee-home .ee-stories__inner > .wp-block-columns { display:grid;grid-template-columns:1fr 1fr; }
.ee-home .ee-story--reverse > .ee-story__visual { order:2; }
.ee-home .ee-story--reverse > .ee-story__copy { order:1; }
.ee-home .ee-highlights > .wp-block-group { width:100%;max-width:none; }
@media(max-width:781px) {
 .ee-home > .wp-block-group.alignwide,
 .ee-home .ee-editorial-hero > .ee-editorial-hero__inner,
 .ee-home .ee-stories > .ee-stories__inner { width:calc(100% - 32px); }
 .ee-home .ee-worlds-grid { grid-template-columns:1fr; }
 .ee-home .ee-stories__inner > .wp-block-columns { grid-template-columns:1fr; }
 .ee-home .ee-story--reverse > .ee-story__visual,
 .ee-home .ee-story--reverse > .ee-story__copy { order:initial; }
}


/* Hero media integration: optional local placeholder, no CDN or stock dependency. */
.ee-home .ee-editorial-hero > .ee-editorial-hero__inner {
  display:grid; grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
  align-items:center; gap:clamp(32px,4vw,70px);
  width:min(calc(100% - 64px),1440px); max-width:1440px;
  padding:clamp(40px,5vw,72px) 0; margin-inline:auto;
}
.ee-home .ee-editorial-hero__copy {
  width:100%; max-width:610px; min-width:0;
  display:flex; flex-direction:column; align-items:flex-start;
}
.ee-home .ee-editorial-hero__copy > * {
  max-width:100%; width:auto; margin-left:0; margin-right:0;
}
.ee-home .ee-editorial-hero__copy h1 {
  font-size:clamp(42px,4.2vw,72px); line-height:1.08;
  max-width:17ch;
}
.ee-home .ee-editorial-hero__copy .wp-block-buttons { justify-content:flex-start; }
.ee-home .ee-editorial-hero__visual {
  display:block; width:100%; min-width:0;
  height:clamp(390px,35vw,570px);
  border-radius:18px;
  background-image:linear-gradient(140deg,#F1F1F2,#E8D6C6),url('../images/hero-placeholder.webp');
  background-image:url('../images/hero-placeholder.webp'),linear-gradient(140deg,#F1F1F2,#E8D6C6);
  background-size:cover; background-position:center;
  overflow:hidden;
}
@media(max-width:900px) {
  .ee-home .ee-editorial-hero > .ee-editorial-hero__inner {
    grid-template-columns:1fr; width:calc(100% - 40px);
    padding-block:44px; gap:28px;
  }
  .ee-home .ee-editorial-hero__copy { max-width:680px; }
  .ee-home .ee-editorial-hero__copy h1 { font-size:clamp(38px,7vw,58px); }
  .ee-home .ee-editorial-hero__visual {height:clamp(260px,55vw,480px);}
}


/* Hero v4: standalone, explicitly sized grid; no Gutenberg layout constraints. */
.ee-home .ee-hero-v4 { width:100%; max-width:none; margin:0; background:linear-gradient(110deg,#F1F1F2 0%,#fff 52%,#f9eee5 100%); }
.ee-home .ee-hero-v4__container {
  box-sizing:border-box; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:clamp(32px,4vw,72px); align-items:center;
  width:calc(100% - 64px); max-width:1440px; min-width:0; margin:0 auto;
  padding:clamp(45px,5vw,76px) 0;
}
.ee-home .ee-hero-v4__copy { box-sizing:border-box; display:block; width:100%; min-width:0; max-width:610px; }
.ee-home .ee-hero-v4__copy > * { margin-left:0; margin-right:0; }
.ee-home .ee-hero-v4__eyebrow { font:700 12px/1.5 Montserrat,system-ui,sans-serif; letter-spacing:.11em; color:#202221; }
.ee-home .ee-hero-v4 h1 { font-size:clamp(42px,3.6vw,68px); font-weight:400; line-height:1.09; margin:18px 0 22px; max-width:15ch; overflow-wrap:normal; color:#202221; }
.ee-home .ee-hero-v4__intro { font-size:clamp(17px,1.4vw,21px); line-height:1.6; margin:0; max-width:570px; color:#202221; }
.ee-home .ee-hero-v4__button { display:inline-flex;align-items:center;justify-content:center; min-height:48px; box-sizing:border-box; padding:12px 26px; margin-top:28px; background:#EA8439; color:#202221; border-radius:10px; text-decoration:none; font-weight:700; }
.ee-home .ee-hero-v4__button:hover { background:#F7AD4A; color:#202221; }
.ee-home .ee-hero-v4__button:focus-visible { outline:3px solid #005EB8; outline-offset:3px; }
.ee-home .ee-hero-v4__trust { margin:32px 0 0; font-size:13px; color:#202221; }
.ee-home .ee-hero-v4__image { display:block; width:100%; min-width:0; height:clamp(370px,34vw,550px); border-radius:16px; background:#E8D6C6 url('../images/hero-placeholder.webp') center / cover no-repeat; }
@media(max-width:900px) {
  .ee-home .ee-hero-v4__container { grid-template-columns:minmax(0,1fr); width:calc(100% - 40px); gap:28px; }
  .ee-home .ee-hero-v4__copy { max-width:680px; }
  .ee-home .ee-hero-v4 h1 { font-size:clamp(38px,7vw,56px); }
  .ee-home .ee-hero-v4__image { height:clamp(260px,58vw,470px); }
}


/* Phase 2 content hierarchy: primary Hue Plate world, secondary creative worlds. */
.ee-home .ee-world--plates { position:relative; border:2px solid #EA8439; }
.ee-home .ee-world--plates::before {
  content:"UNSER SCHWERPUNKT"; position:absolute; top:22px; left:24px;
  background:#EA8439; color:#202221; border-radius:5px; padding:7px 10px;
  font-size:11px; font-weight:700; letter-spacing:.06em; line-height:1.2;
}
.ee-home .ee-world--plates .ee-world__content { padding-top:64px; }
.ee-home .ee-world__content h3 { color:#fff; }
.ee-home .ee-story__copy > .ee-eyebrow { color:#005EB8; }
@media(max-width:781px) {
  .ee-home .ee-world--plates::before { top:16px;left:20px; }
}

.ee-home .ee-hero-v4__media{position:relative;overflow:hidden;border-radius:16px;height:clamp(370px,34vw,550px);background:#202221}
.ee-home .ee-hero-v4__media picture,.ee-home .ee-hero-v4__media img,.ee-home .ee-hero-v4__media video{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
@media(max-width:900px){.ee-home .ee-hero-v4__media{height:clamp(260px,58vw,470px)}.ee-home .ee-hero-v4__media video{display:none}}
@media(prefers-reduced-motion:reduce){.ee-home .ee-hero-v4__media video{display:none}}

/* Editable Gutenberg hero on page-ee-home: same visual system as v4. */
.ee-home .ee-hero-gutenberg { width:100%; max-width:none; margin:0; background:linear-gradient(110deg,#F1F1F2 0%,#fff 52%,#f9eee5 100%); }
.ee-home .ee-hero-gutenberg__columns {
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:clamp(32px,4vw,72px); align-items:center;
  box-sizing:border-box; width:calc(100% - 64px); max-width:1440px;
  margin:0 auto; padding:clamp(45px,5vw,76px) 0;
}
.ee-home .ee-hero-gutenberg__columns > .wp-block-column { min-width:0; margin:0; }
.ee-home .ee-hero-gutenberg__copy { max-width:610px; }
.ee-home .ee-hero-gutenberg__eyebrow { font:700 12px/1.5 Montserrat,system-ui,sans-serif; letter-spacing:.11em; }
.ee-home .ee-hero-gutenberg h1 { font-size:clamp(42px,3.6vw,68px); font-weight:400; line-height:1.09; margin:18px 0 22px; max-width:15ch; color:#202221; }
.ee-home .ee-hero-gutenberg__intro { font-size:clamp(17px,1.4vw,21px); line-height:1.6; margin:0; max-width:570px; }
.ee-home .ee-hero-gutenberg__copy .wp-block-buttons { margin-top:28px; justify-content:flex-start; }
.ee-home .ee-hero-gutenberg__cta .wp-block-button__link { background:#EA8439; color:#202221; padding:12px 26px; font-weight:700; min-height:48px; border-radius:10px; }
.ee-home .ee-hero-gutenberg__cta .wp-block-button__link:hover { background:#F7AD4A; }
.ee-home .ee-hero-gutenberg__trust { margin-top:32px; font-size:13px; }
.ee-home .ee-hero-gutenberg__visual { overflow:hidden; border-radius:16px; background:#202221; }
.ee-home .ee-hero-gutenberg__image { margin:0; width:100%; }
.ee-home .ee-hero-gutenberg__image img { display:block; width:100%; height:clamp(370px,34vw,550px); object-fit:cover; object-position:center; }
@media(max-width:900px) {
  .ee-home .ee-hero-gutenberg__columns { grid-template-columns:minmax(0,1fr); width:calc(100% - 40px); gap:28px; }
  .ee-home .ee-hero-gutenberg h1 { font-size:clamp(38px,7vw,56px); }
  .ee-home .ee-hero-gutenberg__image img { height:clamp(260px,58vw,470px); }
}

/* Motion-only enhancement: underlying Gutenberg image is always the fallback. */
.ee-home .ee-hero-gutenberg__visual { position:relative; isolation:isolate; }
.ee-home .ee-hero-gutenberg__video {
  position:absolute; inset:0; z-index:1; display:block;
  width:100%; height:100%; object-fit:cover; object-position:center;
  pointer-events:none;
}
@media(max-width:900px) {
  .ee-home .ee-hero-gutenberg__video { display:none; }
}
@media(prefers-reduced-motion:reduce) {
  .ee-home .ee-hero-gutenberg__video { display:none; }
}

/* Editable media block: one fixed frame, accessible image fallback, optional video. */
.ee-home .ee-hero-gutenberg__visual .ee-hero-media,
.ee-hero-media-block .ee-hero-media {
 position:relative; width:100%; overflow:hidden; border-radius:16px; background:#202221;
 height:clamp(370px,34vw,550px);
}
.ee-home .ee-hero-gutenberg__visual .ee-hero-media__image,
.ee-home .ee-hero-gutenberg__visual .ee-hero-media__video,
.ee-hero-media-block .ee-hero-media__image,
.ee-hero-media-block .ee-hero-media__video {
 position:absolute; inset:0; width:100%; height:100%; display:block; object-fit:cover; object-position:center;
}
.ee-home .ee-hero-gutenberg__visual .ee-hero-media__video { pointer-events:none; }
@media(max-width:900px) {
 .ee-home .ee-hero-gutenberg__visual .ee-hero-media { height:clamp(260px,58vw,470px); }
 .ee-home .ee-hero-gutenberg__visual .ee-hero-media__video { display:none; }
}
@media(prefers-reduced-motion:reduce) {
 .ee-home .ee-hero-gutenberg__visual .ee-hero-media__video { display:none; }
}

/* Image-backed product-world cards. */
.ee-home .ee-world { position:relative; isolation:isolate; }
.ee-home .ee-world > .ee-world__image {
  position:absolute; inset:0; width:100%; height:100%; margin:0;
  z-index:0; overflow:hidden;
}
.ee-home .ee-world > .ee-world__image img {
  display:block; width:100%; height:100%; object-fit:cover;
}
.ee-home .ee-world::after {
  content:""; position:absolute; inset:0; z-index:1;
  background:linear-gradient(180deg,transparent 20%,rgba(13,22,29,.85) 100%);
  pointer-events:none;
}
.ee-home .ee-world__content { position:relative; z-index:2; }
.ee-home .ee-world--plates::before { z-index:3; }

/* Product worlds v2: editor-managed core/image blocks, no database migrations.
   Place each image as a direct first child of its product-world column. */
.ee-home .ee-worlds-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:stretch;
  gap:clamp(14px,2vw,24px);
}
.ee-home .ee-worlds-grid > .ee-world {
  box-sizing:border-box;
  position:relative;
  isolation:isolate;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  align-items:stretch;
  min-width:0;
  min-height:clamp(340px,32vw,440px);
  overflow:hidden;
}
.ee-home .ee-world > .wp-block-image.ee-world__image {
  position:absolute;
  inset:0;
  z-index:0;
  display:block;
  width:100%;
  height:100%;
  margin:0;
  overflow:hidden;
}
.ee-home .ee-world > .wp-block-image.ee-world__image img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.ee-home .ee-world::after {
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(180deg,rgba(8,20,28,.08) 0%,rgba(8,20,28,.22) 34%,rgba(8,20,28,.9) 100%);
  pointer-events:none;
}
.ee-home .ee-world > .ee-world__content {
  position:relative;
  z-index:2;
  width:100%;
  min-width:0;
  max-width:none;
  margin:0;
  box-sizing:border-box;
  padding:clamp(24px,3vw,36px);
}
.ee-home .ee-world__content :is(h3,p,a) {
  overflow-wrap:normal;
  word-break:normal;
  hyphens:auto;
}
.ee-home .ee-world--plates::before { z-index:3; }
@media(max-width:781px) {
  .ee-home .ee-worlds-grid { grid-template-columns:minmax(0,1fr); }
  .ee-home .ee-worlds-grid > .ee-world { min-height:310px; }
}

/* Shared layout for non-home WordPress pages and WooCommerce views. */
.ee-inner-page, .ee-shop-page {
  box-sizing:border-box;
  width:min(calc(100% - 40px),1200px);
  max-width:1200px;
  min-height:55vh;
  margin-inline:auto;
  padding:clamp(38px,5vw,80px) 0 clamp(64px,7vw,112px);
}
.ee-inner-page > :first-child, .ee-shop-page > :first-child { margin-top:0; }
.ee-inner-page h1, .ee-shop-page h1,
.ee-shop-page .woocommerce-products-header__title,
.ee-shop-page .product_title {
  font-family:Antonio,'Arial Narrow',sans-serif;
  font-size:clamp(34px,4vw,58px);
  line-height:1.12;
  color:#202221;
}
.ee-shop-page .woocommerce-breadcrumb {margin-bottom:24px;color:#555;}
.ee-shop-page .woocommerce-breadcrumb a {color:#005EB8;}
.ee-shop-page ul.products {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:28px 0 44px;padding:0;}
.ee-shop-page ul.products::before,.ee-shop-page ul.products::after {display:none;}
.ee-shop-page ul.products li.product {float:none!important;width:auto!important;margin:0!important;min-width:0;list-style:none;}
.ee-shop-page ul.products li.product img {width:100%;aspect-ratio:1;object-fit:contain;background:#F1F1F2;border-radius:12px;}
.ee-shop-page ul.products li.product .woocommerce-loop-product__title {color:#202221;font-weight:700;font-size:17px;}
.ee-shop-page :is(.button,button.button,input.button) {
  background:#EA8439!important;color:#202221!important;
  border-radius:9px!important;padding:12px 18px!important;font-weight:700!important;
}
.ee-shop-page :is(.button,button.button,input.button):hover {background:#F7AD4A!important;}
.ee-shop-page :where(a,button,input,select):focus-visible,
.ee-inner-page :where(a,button,input):focus-visible {outline:3px solid #005EB8;outline-offset:3px;}
.ee-shop-page .woocommerce div.product {max-width:1200px;}
@media(max-width:950px){.ee-shop-page ul.products{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:680px){
  .ee-inner-page,.ee-shop-page{width:calc(100% - 32px);}
  .ee-shop-page ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
}

/* Shop catalog uses editable native WooCommerce Product Collection blocks. */
.ee-shop-catalog .ee-catalog-intro {max-width:none;margin-bottom:24px;}
.ee-shop-catalog .ee-catalog-intro h1 {margin:0 0 12px;}
.ee-shop-catalog .ee-catalog-intro p {margin:0;color:#535b60;font-size:clamp(16px,1.6vw,19px);}
.ee-shop-catalog .ee-catalog-toolbar {max-width:none;gap:18px;margin-block:24px 20px;}
.ee-shop-catalog .wp-block-woocommerce-product-collection {width:100%;max-width:none;}
.ee-shop-catalog .wc-block-product-template,
.ee-shop-catalog .wp-block-woocommerce-product-template {gap:24px;}
.ee-shop-catalog .wc-block-product-template > li,
.ee-shop-catalog .wp-block-woocommerce-product-template > li {
  box-sizing:border-box;min-width:0;margin:0;padding:0;
}
.ee-shop-catalog .wc-block-components-product-image img,
.ee-shop-catalog .wc-block-product-template img {
  width:100%;height:auto;aspect-ratio:1;object-fit:contain;
  background:#F1F1F2;border-radius:12px;
}
.ee-shop-catalog .wp-block-post-title {font-size:clamp(17px,1.6vw,21px);line-height:1.35;margin:12px 0 6px;}
.ee-shop-catalog .wp-block-post-title a {color:#202221;text-decoration:none;}
.ee-shop-catalog .wc-block-components-product-price {font-weight:700;}
.ee-shop-catalog .wc-block-components-product-button .wp-block-button__link {background:#EA8439;color:#202221;border-radius:9px;font-weight:700;}
.ee-shop-catalog .wp-block-query-pagination {margin-top:36px;}
@media(max-width:780px){
  .ee-shop-catalog .wc-block-product-template,
  .ee-shop-catalog .wp-block-woocommerce-product-template {gap:16px;}
}

/* Catalog flow repair: products must participate in document layout so the
   footer follows the final product row (not the first row). */
.ee-shop-catalog .wp-block-woocommerce-product-collection,
.ee-shop-catalog .wc-block-product-template,
.ee-shop-catalog .wp-block-woocommerce-product-template {
  box-sizing:border-box;
  position:relative;
  height:auto;
  min-height:0;
  overflow:visible;
}
.ee-shop-catalog .wc-block-product-template,
.ee-shop-catalog .wp-block-woocommerce-product-template {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  grid-auto-flow:row;
  align-items:start;
  gap:clamp(16px,2vw,24px);
  width:100%;
}
.ee-shop-catalog .wc-block-product-template > li,
.ee-shop-catalog .wp-block-woocommerce-product-template > li {
  float:none !important;
  position:static;
  width:auto !important;
  min-width:0;
  height:auto;
}
@media(max-width:950px) {
  .ee-shop-catalog .wc-block-product-template,
  .ee-shop-catalog .wp-block-woocommerce-product-template {
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media(max-width:680px) {
  .ee-shop-catalog .wc-block-product-template,
  .ee-shop-catalog .wp-block-woocommerce-product-template {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

/* Raft's .wp-site-blocks is a flex column. The shop <main> must never
   shrink beneath its product collection's intrinsic height: otherwise the
   footer starts at min-height:55vh while products overflow past it. */
.wp-site-blocks > main.ee-shop-page,
.wp-site-blocks > main.ee-inner-page {
  flex-shrink:0;
  height:auto;
  max-height:none;
}
.wp-site-blocks > footer,
.wp-site-blocks > .wp-block-template-part:has(> footer.ee-footer) {
  flex-shrink:0;
}

/* Shop taxonomy navigation: WooCommerce category list styled as compact chips.
   Category contents and their URLs are supplied by WooCommerce, not the theme. */
.ee-shop-catalog .ee-catalog-categories {
  width:100%;
  max-width:none;
  margin:clamp(18px,3vw,32px) 0 30px;
}
.ee-shop-catalog .ee-catalog-categories__label {
  margin:0 0 12px;
  font-size:13px;
  font-weight:700;
  letter-spacing:.05em;
  text-transform:uppercase;
  color:#59636a;
}
.ee-shop-catalog .ee-catalog-categories :is(.wc-block-product-categories-list,.wc-block-product-categories__list) {
  list-style:none;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  margin:0;
  padding:0;
}
.ee-shop-catalog .ee-catalog-categories :is(.wc-block-product-categories-list-item,.wc-block-product-categories__list-item) {
  list-style:none;
  margin:0;
  padding:0;
}
.ee-shop-catalog .ee-catalog-categories :is(.wc-block-product-categories-list-item,.wc-block-product-categories__list-item) > a {
  display:inline-flex;
  align-items:center;
  min-height:42px;
  box-sizing:border-box;
  padding:9px 16px;
  border-radius:999px;
  background:#F1F1F2;
  border:1px solid #dde0e2;
  color:#202221;
  font-size:14px;
  line-height:1.25;
  font-weight:650;
  text-decoration:none;
  transition:background-color .15s ease,border-color .15s ease;
}
.ee-shop-catalog .ee-catalog-categories :is(.wc-block-product-categories-list-item,.wc-block-product-categories__list-item) > a:hover {
  background:#fff1e5;
  border-color:#EA8439;
}
.ee-shop-catalog .ee-catalog-categories a:focus-visible {
  outline:3px solid #005EB8;
  outline-offset:3px;
}

/* Editable Gutenberg paragraph with four shop category destinations. */
.ee-shop-catalog .ee-catalog-categories p.ee-catalog-categories__links {
  display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0;
}
.ee-shop-catalog .ee-catalog-categories p.ee-catalog-categories__links a {
  display:inline-flex;align-items:center;justify-content:center;
  min-height:42px;box-sizing:border-box;padding:9px 16px;
  border:1px solid #dde0e2;border-radius:999px;background:#F1F1F2;
  color:#202221;text-decoration:none;font-size:14px;line-height:1.25;font-weight:650;
}
.ee-shop-catalog .ee-catalog-categories p.ee-catalog-categories__links a:hover {
  background:#fff1e5;border-color:#EA8439;
}

/* Artist landing: shared EE branding; all text/media remain Gutenberg blocks. */
.ee-artist-page .ee-artist-hero{background:linear-gradient(115deg,#f1f1f2,#fff 68%,#faede3);padding:clamp(52px,7vw,108px) clamp(20px,4vw,48px);}
.ee-artist-page .ee-artist-hero__columns{width:min(100%,1350px);max-width:1350px;margin-inline:auto;gap:clamp(28px,5vw,80px);align-items:center;}
.ee-artist-page .ee-artist-hero__copy{min-width:0;}
.ee-artist-page .ee-artist-hero__copy h1{font-size:clamp(46px,5.5vw,84px);line-height:1.05;overflow-wrap:normal;margin:14px 0 24px;}
.ee-artist-page .ee-artist-hero__copy p{max-width:620px;}
.ee-artist-page .ee-artist-hero__copy .wp-block-buttons{margin-top:28px;}
.ee-artist-page .ee-artist-hero__copy .is-style-outline .wp-block-button__link{background:transparent!important;border:2px solid #202221;color:#202221!important;}
.ee-artist-page .ee-artist-photo-placeholder{display:flex;align-items:center;justify-content:center;min-height:clamp(320px,36vw,510px);padding:28px;border-radius:18px;background:linear-gradient(135deg,#202221,#3c8db9);color:#fff;box-sizing:border-box;}
.ee-artist-page .ee-artist-photo-placeholder p{max-width:300px;color:#fff;}
.ee-artist-page .ee-artist-section{box-sizing:border-box;width:min(calc(100% - 40px),1350px);max-width:1350px;margin-inline:auto;padding:clamp(48px,6vw,88px) 0;}
.ee-artist-page .ee-artist-section > :is(h2,p){margin-inline:auto;text-align:center;}
.ee-artist-page .ee-artist-cards{margin-top:38px;gap:24px;}
.ee-artist-page .ee-artist-card{box-sizing:border-box;min-width:0;min-height:290px;display:flex;flex-direction:column;justify-content:flex-end;border-radius:16px;padding:clamp(24px,3vw,40px);background:linear-gradient(145deg,#202221,#082744);color:#fff;}
.ee-artist-page .ee-artist-card:nth-child(2){background:linear-gradient(145deg,#005eb8,#202221);}
.ee-artist-page .ee-artist-card :is(h3,p,a){color:#fff;}
.ee-artist-page .ee-artist-card h3{font-size:clamp(29px,3vw,43px);margin:0;}
.ee-artist-page .ee-artist-card a{font-weight:700;text-underline-offset:5px;}
.ee-artist-page .ee-artist-story{background:#f1f1f2;padding:clamp(54px,7vw,96px) clamp(20px,4vw,48px);}
.ee-artist-page .ee-artist-story > .wp-block-group{width:min(100%,950px);max-width:950px;margin-inline:auto;}
.ee-artist-page .ee-artist-story h2{margin-top:12px;}
.ee-artist-page .ee-artist-section .wp-block-buttons{justify-content:center;}
@media(max-width:781px){
 .ee-artist-page .ee-artist-hero{padding:48px 20px;}
 .ee-artist-page .ee-artist-hero__columns{flex-direction:column;align-items:stretch;}
 .ee-artist-page .ee-artist-photo-placeholder{min-height:280px;}
 .ee-artist-page .ee-artist-cards{flex-direction:column;}
}

/* Gutenberg-managed photos inside the two RabenfederArt product-world cards. */
.ee-artist-page .ee-artist-card .ee-artist-card__image {
  margin: 0 0 24px;
  width: 100%;
}
.ee-artist-page .ee-artist-card .ee-artist-card__image img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
  object-fit: contain;
  background: #202221;
  border-radius: 12px;
}
.ee-artist-page .ee-artist-card .ee-artist-card__image figcaption {
  color: #fff;
  opacity: .85;
  font-size: 13px;
}

/* Let handcrafted pieces be seen in full, and keep the hero frame understated. */
.ee-artist-page .ee-artist-photo-placeholder {
  background: #202221;
  padding: 12px;
  border-radius: 16px;
  overflow: hidden;
}
.ee-artist-page .ee-artist-photo-placeholder .wp-block-image {
  margin: 0;
  width: 100%;
}
.ee-artist-page .ee-artist-photo-placeholder .wp-block-image img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 7px;
}

/* Single product polish. Scoped to the existing WooCommerce legacy template;
   leave gallery, variations, stock, cart actions and tab functionality intact. */
body.single-product.woocommerce .ee-shop-page div.product {
  --ee-detail-ink: #202221;
  --ee-detail-accent: #EA8439;
  color: var(--ee-detail-ink);
}
body.single-product.woocommerce .ee-shop-page div.product .product_title {
  font-size: clamp(31px, 3.3vw, 52px);
  line-height: 1.13;
  margin: 0 0 20px;
  overflow-wrap: break-word;
}
body.single-product.woocommerce .ee-shop-page div.product .summary {
  min-width: 0;
}
body.single-product.woocommerce .ee-shop-page div.product .summary > .price {
  color: var(--ee-detail-ink);
  font-size: clamp(23px, 2.1vw, 32px);
  font-weight: 750;
  margin: 0 0 20px;
}
body.single-product.woocommerce .ee-shop-page div.product .summary .woocommerce-product-details__short-description {
  line-height: 1.7;
  margin-bottom: 20px;
}
body.single-product.woocommerce .ee-shop-page div.product .stock {
  color: #286c43;
  font-weight: 650;
  margin-bottom: 18px;
}
body.single-product.woocommerce .ee-shop-page div.product form.cart {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin: 18px 0 22px;
}
body.single-product.woocommerce .ee-shop-page div.product form.cart .quantity {
  float: none;
  margin: 0;
}
body.single-product.woocommerce .ee-shop-page div.product form.cart .qty {
  box-sizing: border-box;
  min-height: 48px;
  min-width: 72px;
  width: 78px;
  padding: 9px 8px;
  border: 1px solid #d9dcdf;
  border-radius: 9px;
  background: #fff;
  color: #202221;
  text-align: center;
  font: inherit;
}
body.single-product.woocommerce .ee-shop-page div.product form.cart .single_add_to_cart_button {
  float: none;
  min-height: 48px;
  padding: 12px 24px;
  border-radius: 9px;
  background: #EA8439;
  color: #202221;
  font: inherit;
  font-weight: 750;
  transition: background-color .15s ease;
}
body.single-product.woocommerce .ee-shop-page div.product form.cart .single_add_to_cart_button:hover {
  background: #F7AD4A;
  color: #202221;
}
body.single-product.woocommerce .ee-shop-page div.product form.cart .single_add_to_cart_button:disabled {
  opacity: .5;
  cursor: not-allowed;
}
body.single-product.woocommerce .ee-shop-page div.product .product_meta {
  color: #555b60;
  line-height: 1.75;
  font-size: 14px;
  overflow-wrap: anywhere;
}
body.single-product.woocommerce .ee-shop-page div.product :is(.product_meta, .woocommerce-breadcrumb) a {
  color: #245e85;
  text-underline-offset: 3px;
}
body.single-product.woocommerce .ee-shop-page div.product .woocommerce-tabs {
  clear: both;
  padding-top: clamp(30px, 5vw, 64px);
}
body.single-product.woocommerce .ee-shop-page div.product .woocommerce-tabs ul.tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 0;
  margin: 0 0 34px;
  border-bottom: 1px solid #d9dcdf;
}
body.single-product.woocommerce .ee-shop-page div.product .woocommerce-tabs ul.tabs::before,
body.single-product.woocommerce .ee-shop-page div.product .woocommerce-tabs ul.tabs li::before,
body.single-product.woocommerce .ee-shop-page div.product .woocommerce-tabs ul.tabs li::after {
  display: none;
}
body.single-product.woocommerce .ee-shop-page div.product .woocommerce-tabs ul.tabs li {
  margin: 0 0 -1px;
  padding: 0;
  background: #F1F1F2;
  border: 1px solid #d9dcdf;
  border-radius: 9px 9px 0 0;
  box-shadow: none;
}
body.single-product.woocommerce .ee-shop-page div.product .woocommerce-tabs ul.tabs li.active {
  background: #fff;
  border-bottom-color: #fff;
}
body.single-product.woocommerce .ee-shop-page div.product .woocommerce-tabs ul.tabs li a {
  display: block;
  padding: 12px 18px;
  color: #202221;
  font-size: 15px;
  text-decoration: none;
}
body.single-product.woocommerce .ee-shop-page div.product .woocommerce-tabs ul.tabs li.active a {
  color: #202221;
  box-shadow: inset 0 3px #EA8439;
}
body.single-product.woocommerce .ee-shop-page div.product .woocommerce-tabs .panel {
  line-height: 1.75;
  margin-bottom: clamp(42px, 6vw, 84px);
}
body.single-product.woocommerce .ee-shop-page div.product .woocommerce-tabs .panel h2 {
  font-size: clamp(26px, 2.5vw, 38px);
  line-height: 1.2;
  margin: 0 0 22px;
}
body.single-product.woocommerce .ee-shop-page div.product .related.products {
  clear: both;
  padding-top: 12px;
}
body.single-product.woocommerce .ee-shop-page div.product .related.products > h2 {
  font-size: clamp(30px, 3vw, 44px);
  margin: 0 0 30px;
}
body.single-product.woocommerce .ee-shop-page div.product .related.products ul.products li.product {
  min-width: 0;
}
body.single-product.woocommerce .ee-shop-page div.product .related.products ul.products li.product a img {
  border-radius: 12px;
  background: #F1F1F2;
}
body.single-product.woocommerce .ee-shop-page div.product .related.products ul.products li.product .woocommerce-loop-product__title {
  font-size: 16px;
  line-height: 1.45;
  color: #202221;
}
body.single-product.woocommerce .ee-shop-page div.product .related.products ul.products li.product .price {
  color: #202221;
  font-weight: 700;
}
body.single-product.woocommerce .ee-shop-page div.product .related.products ul.products li.product .button {
  min-height: 44px;
  box-sizing: border-box;
  border-radius: 9px;
  background: #EA8439;
  color: #202221;
  padding: 12px 16px;
  font-weight: 700;
}
body.single-product.woocommerce .ee-shop-page div.product .related.products ul.products li.product .button:hover {
  background: #F7AD4A;
}
body.single-product .ee-shop-page :is(a,button,input,select):focus-visible {
  outline: 3px solid #005EB8;
  outline-offset: 3px;
}
@media (max-width: 767px) {
  body.single-product.woocommerce .ee-shop-page div.product .woocommerce-tabs { padding-top: 26px; }
  body.single-product.woocommerce .ee-shop-page div.product .woocommerce-tabs ul.tabs li a { padding: 10px 12px; font-size: 14px; }
  body.single-product.woocommerce .ee-shop-page div.product form.cart { gap: 10px; }
}

/* Separate SKU, categories and tags into readable rows below the cart. */
body.single-product.woocommerce .ee-shop-page div.product .summary .product_meta {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  margin-top: 20px;
  padding-top: 16px;
  border-top: 1px solid #e8e8e9;
}
body.single-product.woocommerce .ee-shop-page div.product .summary .product_meta > span {
  display: block;
  width: 100%;
  box-sizing: border-box;
  line-height: 1.6;
}
body.single-product.woocommerce .ee-shop-page div.product .summary .product_meta .tagged_as {
  font-size: 13px;
  color: #697076;
}

/* Brand-consistent single-product breadcrumbs and metadata links. */
body.single-product.woocommerce .ee-shop-page .woocommerce-breadcrumb {
  color: #697076;
}
body.single-product.woocommerce .ee-shop-page .woocommerce-breadcrumb a,
body.single-product.woocommerce .ee-shop-page div.product .product_meta a {
  color: #202221;
  text-decoration: underline;
  text-decoration-color: #aeb4b8;
  text-underline-offset: 3px;
  transition: color .15s ease, text-decoration-color .15s ease;
}
body.single-product.woocommerce .ee-shop-page .woocommerce-breadcrumb a:hover,
body.single-product.woocommerce .ee-shop-page div.product .product_meta a:hover {
  color: #EA8439;
  text-decoration-color: currentColor;
}

/* WooCommerce legacy category grids: replace default blue price links. */
body.tax-product_cat.woocommerce .ee-shop-page ul.products li.product .price,
body.tax-product_cat.woocommerce .ee-shop-page ul.products li.product .price :is(.amount, bdi, ins),
body.post-type-archive-product.woocommerce .ee-shop-page ul.products li.product .price,
body.post-type-archive-product.woocommerce .ee-shop-page ul.products li.product .price :is(.amount, bdi, ins) {
  color: #202221;
  font-weight: 700;
}

/* Brand-color review stars: WooCommerce's rating control is a CSS star font. */
body.single-product.woocommerce .ee-shop-page #review_form #respond p.stars a,
body.single-product.woocommerce .ee-shop-page #review_form #respond p.stars a::before,
body.single-product.woocommerce .ee-shop-page .star-rating,
body.single-product.woocommerce .ee-shop-page .star-rating::before,
body.single-product.woocommerce .ee-shop-page .star-rating span::before {
  color: #EA8439;
}
body.single-product.woocommerce .ee-shop-page #review_form #respond p.stars a:focus-visible {
  outline: 2px solid #202221;
  outline-offset: 3px;
}

/* Regular Gutenberg pages: consistent legal-page heading scale and text links.
   Scoped to the standard page template, not artist/home landing pages. */
body.page .ee-inner-page > .wp-block-post-title {
  font-size: clamp(32px, 3.3vw, 48px);
  line-height: 1.15;
  margin-bottom: 30px;
}
body.page .ee-inner-page .wp-block-post-content :is(h2, .wp-block-heading):where(h2) {
  font-size: clamp(25px, 2.3vw, 34px);
  line-height: 1.2;
  overflow-wrap: break-word;
  margin-top: 34px;
  margin-bottom: 18px;
}
body.page .ee-inner-page .wp-block-post-content h3 {
  font-size: clamp(21px, 1.9vw, 27px);
  line-height: 1.3;
}
body.page .ee-inner-page .wp-block-post-content a:not(.wp-block-button__link) {
  color: #202221;
  text-decoration: underline;
  text-decoration-color: #aeb4b8;
  text-underline-offset: 3px;
}
body.page .ee-inner-page .wp-block-post-content a:not(.wp-block-button__link):hover {
  color: #EA8439;
  text-decoration-color: currentColor;
}

/* Checkout block: compact item name in the right-hand order summary. */
body.woocommerce-checkout .ee-checkout-page .wc-block-components-order-summary-item__description .wc-block-components-product-name {
  font-size: 15px;
  font-weight: 650;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

/* Brand link treatment for WooCommerce cart, checkout and order confirmation.
   Restrict to product links; payment/consent controls retain their own styling. */
body.woocommerce-cart .wc-block-cart-items a.wc-block-components-product-name,
body.woocommerce-checkout .wc-block-components-order-summary a.wc-block-components-product-name,
body.woocommerce-order-received .woocommerce-order-details a,
body.woocommerce-order-received .woocommerce-table--order-details a {
  color: #202221;
  text-decoration: underline;
  text-decoration-color: #aeb4b8;
  text-underline-offset: 3px;
}
body.woocommerce-cart .wc-block-cart-items a.wc-block-components-product-name:hover,
body.woocommerce-checkout .wc-block-components-order-summary a.wc-block-components-product-name:hover,
body.woocommerce-order-received .woocommerce-order-details a:hover,
body.woocommerce-order-received .woocommerce-table--order-details a:hover {
  color: #EA8439;
  text-decoration-color: currentColor;
}

/* Gutenberg homepage highlights only: balance title, product names and buttons. */
.ee-home .ee-highlights h2 {
  font-size: clamp(30px, 3.2vw, 44px);
  line-height: 1.15;
}
.ee-home .ee-highlights :is(.wc-block-grid__product-title, .wc-block-components-product-name, .woocommerce-loop-product__title) {
  font-size: clamp(15px, 1.15vw, 18px);
  line-height: 1.4;
  font-weight: 650;
}
.ee-home .ee-highlights :is(.wc-block-grid__product-price, .price) {
  font-size: 16px;
  color: #202221;
}
.ee-home .ee-highlights :is(.wp-block-button__link, .wc-block-grid__product-add-to-cart .wp-block-button__link, a.add_to_cart_button, a.button) {
  font-size: clamp(15px, 1.05vw, 17px);
  line-height: 1.3;
  font-weight: 700;
  padding: 12px 20px;
  min-height: 46px;
  box-sizing: border-box;
}


/* Shared storefront text-link styles.
   Navigation, buttons and image-wrapping anchors retain their own appearance.
   Main Gutenberg link color is also configured in theme.json. */
:where(.ee-home-page, .ee-shop-page, .ee-inner-page) a:not(.wp-element-button):not(.wp-block-button__link):not(.button):not(.add_to_cart_button):not(.wc-block-components-button):not(:has(img)) {
  color: #202221;
  text-decoration-line: underline;
  text-decoration-color: #9aa0a4;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}
:where(.ee-home-page, .ee-shop-page, .ee-inner-page) a:not(.wp-element-button):not(.wp-block-button__link):not(.button):not(.add_to_cart_button):not(.wc-block-components-button):not(:has(img)):hover {
  color: #EA8439;
  text-decoration-color: currentColor;
}
/* WooCommerce frequently wraps headings in links and assigns colors to
   the inner heading. Apply hover to the actual text, not image thumbnails. */
body.woocommerce .ee-shop-page :is(
  .woocommerce-loop-product__title,
  .woocommerce-loop-category__title
),
.ee-home .ee-highlights :is(
  .wc-block-grid__product-title,
  .wc-block-components-product-name,
  .woocommerce-loop-product__title
) {
  color: #202221;
}
body.woocommerce .ee-shop-page a:hover :is(
  .woocommerce-loop-product__title,
  .woocommerce-loop-category__title
),
.ee-home .ee-highlights a:hover :is(
  .wc-block-grid__product-title,
  .wc-block-components-product-name,
  .woocommerce-loop-product__title
) {
  color: #EA8439;
}
body.woocommerce .ee-shop-page a :is(
  .woocommerce-loop-product__title,
  .woocommerce-loop-category__title
) {
  text-decoration: underline;
  text-decoration-color: #9aa0a4;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}
body.woocommerce .ee-shop-page a:hover :is(
  .woocommerce-loop-product__title,
  .woocommerce-loop-category__title
) {
  text-decoration-color: currentColor;
}
/* Germanized adds strong text-decoration resets. Cover product and
   highlight notices independent of localized shipping-page URL. */
body .ee-home .wc-gzd-additional-info.shipping-costs-info a,
body .ee-home-page .wc-gzd-additional-info.shipping-costs-info a,
body.woocommerce .ee-shop-page .wc-gzd-additional-info.shipping-costs-info a {
  color: #202221 !important;
  text-decoration: underline solid #9aa0a4 1px !important;
  text-underline-offset: 3px;
}
body .ee-home .wc-gzd-additional-info.shipping-costs-info a:hover,
body .ee-home-page .wc-gzd-additional-info.shipping-costs-info a:hover,
body.woocommerce .ee-shop-page .wc-gzd-additional-info.shipping-costs-info a:hover {
  color: #EA8439 !important;
  text-decoration-color: currentColor !important;
}
/* Branded pagination, without altering navigation links or action buttons. */
.ee-shop-page :is(.woocommerce-pagination, .wp-block-query-pagination) :is(
  a.page-numbers, .page-numbers a, .wp-block-query-pagination-numbers a,
  .wp-block-query-pagination-next, .wp-block-query-pagination-previous
) {
  color: #202221;
  text-decoration: none;
}
.ee-shop-page :is(.woocommerce-pagination, .wp-block-query-pagination) :is(
  a.page-numbers, .page-numbers a, .wp-block-query-pagination-numbers a,
  .wp-block-query-pagination-next, .wp-block-query-pagination-previous
):hover {
  color: #202221;
  background: #F7AD4A;
  border-color: #EA8439;
}
.ee-shop-page :is(.woocommerce-pagination, .wp-block-query-pagination) :is(
  .page-numbers.current, .wp-block-query-pagination-numbers .current,
  .wp-block-query-pagination-numbers [aria-current="page"]
) {
  color: #202221;
  background: #F1F1F2;
  border-color: #EA8439;
  font-weight: 750;
}
.ee-shop-page :is(.woocommerce-pagination, .wp-block-query-pagination) a:focus-visible {
  outline: 2px solid #EA8439;
  outline-offset: 2px;
}


/* WooCommerce classic account login: brand the actual submit button only.
   Other account actions, logout, checkout and cart remain untouched. */
body.woocommerce-account .woocommerce-form-login button[type="submit"],
body.woocommerce-account .woocommerce-form-login button[name="login"],
body.woocommerce-account form.login .woocommerce-button[type="submit"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 12px 24px;
  background: #EA8439 !important;
  border: 1px solid #EA8439 !important;
  border-radius: 10px;
  color: #202221 !important;
  font-weight: 700;
  text-decoration: none;
  cursor: pointer;
}
body.woocommerce-account .woocommerce-form-login button[type="submit"]:hover,
body.woocommerce-account .woocommerce-form-login button[name="login"]:hover,
body.woocommerce-account form.login .woocommerce-button[type="submit"]:hover {
  background: #F7AD4A !important;
  border-color: #F7AD4A !important;
  color: #202221 !important;
}
body.woocommerce-account .woocommerce-form-login button[type="submit"]:focus-visible,
body.woocommerce-account .woocommerce-form-login button[name="login"]:focus-visible,
body.woocommerce-account form.login .woocommerce-button[type="submit"]:focus-visible {
  outline: 3px solid #202221;
  outline-offset: 3px;
}


/* Interactive links must indicate clickability with a pointer cursor.
   Explicitly override inherited/default cursor rules in Raft/block styles. */
body a[href],
body .wp-block-navigation a[href],
body .wp-block-navigation__responsive-container-open,
body .wp-block-navigation__responsive-container-close {
  cursor: pointer;
}


/* RabenfederArt: maintain readable links on dark product-world cards,
   including WordPress global link and visited-link color overrides. */
body .ee-artist-page .ee-artist-card a[href],
body .ee-artist-page .ee-artist-card a[href]:visited {
  color: #fff !important;
  text-decoration-color: currentColor;
}
body .ee-artist-page .ee-artist-card a[href]:hover,
body .ee-artist-page .ee-artist-card a[href]:focus-visible {
  color: #ffbf87 !important;
}
