/* Pioda Core — Cataloghi tesi incise e serigrafate. Independent from home and footer. */
.pioda-catalog, .pioda-catalog * { box-sizing: border-box; }
.pioda-catalog { --pc-ink:#17232e; --pc-gold:#b9852e; --pc-muted:#6b7280; --pc-line:#e7e9ec; --pc-cream:#f7f5f1; color:var(--pc-ink); font-family:Inter,system-ui,sans-serif; font-size:16px; width:100%; }
.pioda-catalog h1,.pioda-catalog h2 { font-family:'DM Serif Display',Georgia,serif; letter-spacing:-.018em; font-weight:400; color:var(--pc-ink); margin:0 !important; }
.pioda-catalog h3,.pioda-catalog p { margin:0 !important; }
.pioda-catalog a { color:inherit; text-decoration:none; }
.pioda-catalog a:focus-visible,.pioda-catalog button:focus-visible,.pioda-catalog select:focus-visible { outline:2px solid var(--pc-gold); outline-offset:3px; }
.pioda-catalog__wrap { width:100%; max-width:1280px; padding-inline:40px; margin-inline:auto; }
.pioda-catalog__kicker { text-transform:uppercase; color:var(--pc-gold); letter-spacing:.14em; font-weight:700; font-size:11px; line-height:1.3; margin-bottom:16px !important; }
.pioda-catalog-intro { background:linear-gradient(100deg,#fff 0%,#f8f6f2 100%); }
.pioda-catalog-intro__grid { min-height:385px; display:grid; grid-template-columns:minmax(0,1fr) minmax(320px,46%); align-items:center; gap:45px; }
.pioda-catalog-intro__copy { padding-block:49px; }
.pioda-catalog-breadcrumb { display:flex; flex-wrap:wrap; align-items:center; gap:10px; color:#7d8287; font-size:12px; margin-bottom:33px; }
.pioda-catalog-breadcrumb a:hover { color:var(--pc-gold); }
.pioda-catalog-intro h1 { font-size:clamp(46px,4.7vw,69px); line-height:1.07; }
.pioda-catalog-intro__copy > p:not(.pioda-catalog__kicker) { font-size:15px; color:var(--pc-muted); line-height:1.8; max-width:510px; margin-top:21px !important; }
.pioda-catalog-intro__scroll { display:inline-flex; align-items:center; gap:9px; color:var(--pc-ink); font-size:13px; font-weight:700; margin-top:26px; }
.pioda-catalog-intro__scroll span { font-size:20px; color:var(--pc-gold); }
.pioda-catalog-intro__visual { min-height:360px; height:100%; background:#eee8df; position:relative; overflow:hidden; }
.pioda-catalog-intro__visual img { display:block; height:100%; width:100%; object-fit:cover; }
.pioda-catalog-intro__book { position:absolute; inset:15% 29% -20% 25%; background:linear-gradient(110deg,#571121,#8b3043 55%,#581426); border-radius:7px 11px 8px 6px; box-shadow:18px 20px 30px #28202232; transform:rotate(10deg); border-left:15px solid #41111d; }
.pioda-catalog-intro__book::after { content:''; position:absolute; inset:13% 13%; border:1px solid #b9852e90; }
.pioda-catalog-content { padding-top:48px; padding-bottom:82px; }
.pioda-catalog-filter { display:grid; grid-template-columns:minmax(150px,1fr) minmax(150px,1fr) minmax(175px,1fr) auto; align-items:end; gap:18px; padding:22px 24px; background:var(--pc-cream); border:1px solid #ece8e1; border-radius:6px; margin-bottom:38px; }
.pioda-catalog-filter--with-finish { grid-template-columns:repeat(4,minmax(0,1fr)) auto; gap:14px; }
.pioda-catalog-filter__select label { display:block; font-size:11px; letter-spacing:.02em; font-weight:700; margin-bottom:9px; color:var(--pc-ink); }
.pioda-catalog-filter select { width:100%; min-height:44px; padding:8px 34px 8px 12px; background-color:#fff; border:1px solid #dfe1e4; border-radius:4px; font-family:inherit; font-size:13px; color:var(--pc-ink); cursor:pointer; }
.pioda-catalog-filter__submit { min-height:44px; display:inline-flex; gap:9px; align-items:center; justify-content:center; border:0; background:transparent; color:var(--pc-ink); padding:8px 4px; cursor:pointer; font-family:inherit; font-size:13px; font-weight:700; white-space:nowrap; }
.pioda-catalog-filter__submit:hover { color:var(--pc-gold); }
.pioda-catalog-filter__submit span { font-size:21px; color:var(--pc-gold); }
.pioda-catalog-applied { display:flex; gap:9px; align-items:center; flex-wrap:wrap; margin:-15px 0 34px; }
.pioda-catalog-applied a { display:inline-flex; gap:12px; align-items:center; background:#f6f3ed; padding:8px 12px; border-radius:99px; color:var(--pc-ink); font-size:12px; }
.pioda-catalog-applied a span { font-size:19px; line-height:1; }
.pioda-catalog-applied .pioda-catalog-applied__reset { background:transparent; text-decoration:underline; color:var(--pc-muted); }
.pioda-catalog-section { padding-top:28px; padding-bottom:64px; border-bottom:1px solid #e8e9eb; margin-bottom:36px; }
.pioda-catalog-section:last-child { margin-bottom:0; border:0; padding-bottom:0; }
.pioda-catalog-section__heading { display:flex; align-items:end; justify-content:space-between; gap:24px; margin-bottom:28px; }
.pioda-catalog-section__heading h2 { font-size:clamp(32px,3.2vw,44px); line-height:1.13; }
.pioda-catalog-section__heading .pioda-catalog__kicker { margin-bottom:9px !important; }
.pioda-catalog-section__heading p:not(.pioda-catalog__kicker) { font-size:13px; color:var(--pc-muted); margin-top:9px !important; }
.pioda-catalog-section__count { font-size:12px; color:var(--pc-muted); padding-bottom:6px; white-space:nowrap; }
.pioda-catalog-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:36px 25px; }
.pioda-catalog-grid--featured { grid-template-columns:repeat(5,minmax(0,1fr)); gap:20px; }
.pioda-catalog-card { min-width:0; }
.pioda-catalog-card__media { display:block; aspect-ratio:1 / 1; position:relative; background:#f3f0eb; overflow:hidden; border-radius:3px; }
.pioda-catalog-card__media img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .25s ease; }
.pioda-catalog-card:hover .pioda-catalog-card__media img { transform:scale(1.025); }
.pioda-catalog-card__swatch { position:absolute; inset:0; background:linear-gradient(130deg,#6e2432,#47121f); }
.pioda-catalog-card__swatch::after { content:''; position:absolute; inset:0; opacity:.23; background:repeating-linear-gradient(122deg,transparent 0,transparent 3px,#fff2 4px,#0002 6px); }
.pioda-catalog-card__media--rosso .pioda-catalog-card__swatch { background:linear-gradient(130deg,#9e3447,#5f1023); }
.pioda-catalog-card__media--blu .pioda-catalog-card__swatch { background:linear-gradient(130deg,#315679,#111f3b); }
.pioda-catalog-card__media--verde .pioda-catalog-card__swatch { background:linear-gradient(130deg,#457b59,#17422a); }
.pioda-catalog-card__media--nero .pioda-catalog-card__swatch { background:linear-gradient(130deg,#373737,#0c0c0c); }
.pioda-catalog-card__media--bianco .pioda-catalog-card__swatch { background:linear-gradient(130deg,#fbfbf7,#e4e3dc); }
.pioda-catalog-card__media--grigio .pioda-catalog-card__swatch { background:linear-gradient(130deg,#989aa0,#54565b); }
.pioda-catalog-card__media--rosa .pioda-catalog-card__swatch { background:linear-gradient(130deg,#e2b0b5,#c97d92); }
.pioda-catalog-card__media--beige .pioda-catalog-card__swatch { background:linear-gradient(130deg,#d5c4a8,#af9474); }
.pioda-catalog-card__media--marrone .pioda-catalog-card__swatch { background:linear-gradient(130deg,#946047,#472b20); }
.pioda-catalog-card__media--viola .pioda-catalog-card__swatch { background:linear-gradient(130deg,#815c96,#3b2857); }
.pioda-catalog-card__media--giallo .pioda-catalog-card__swatch { background:linear-gradient(130deg,#edc45b,#d49b2e); }
.pioda-catalog-card__details { padding-top:15px; }
.pioda-catalog-card__line { font-size:11px; color:var(--pc-muted); line-height:1.4; margin-bottom:7px !important; }
.pioda-catalog-card h3 { font-family:Inter,system-ui,sans-serif; font-size:15px; line-height:1.4; font-weight:650; color:var(--pc-ink); margin:0 0 9px !important; }
.pioda-catalog-card h3 a:hover { color:#a16e23; }
.pioda-catalog-card__price { color:var(--pc-gold); font-size:14px; font-weight:700; margin:0 0 14px; line-height:1.4; }
.pioda-catalog-card__price del { color:#888; font-weight:400; }
.pioda-catalog-card__link { font-size:12px; display:inline-flex; align-items:center; gap:8px; font-weight:750; line-height:1.5; color:var(--pc-ink); }
.pioda-catalog-card__link:hover { color:var(--pc-gold); }
.pioda-catalog-card__link span { font-size:18px; color:var(--pc-gold); }
.pioda-catalog-empty { padding:58px 30px; text-align:center; background:#faf9f7; border:1px solid #eae7e2; border-radius:5px; }
.pioda-catalog-empty h2 { font-size:34px; }
.pioda-catalog-empty p { margin-top:12px !important; color:var(--pc-muted); }
.pioda-catalog-empty__admin { font-size:12px; }
@media(max-width:1100px) { .pioda-catalog-grid--featured{grid-template-columns:repeat(3,minmax(0,1fr));} .pioda-catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr));} }
@media(max-width:900px) { .pioda-catalog-intro__grid{grid-template-columns:minmax(0,1fr) minmax(230px,42%);gap:24px;} .pioda-catalog__wrap{padding-inline:25px;} .pioda-catalog-filter,.pioda-catalog-filter--with-finish{grid-template-columns:repeat(2,minmax(0,1fr));} }
@media(max-width:640px) {
  .pioda-catalog__wrap{padding-inline:20px;}
  .pioda-catalog-intro__grid{grid-template-columns:1fr; gap:0;}
  .pioda-catalog-intro__copy{padding:32px 0 28px;}
  .pioda-catalog-breadcrumb{margin-bottom:24px;}
  .pioda-catalog-intro h1{font-size:44px;}
  .pioda-catalog-intro__copy>p:not(.pioda-catalog__kicker){font-size:14px;line-height:1.6;margin-top:14px!important;}
  .pioda-catalog-intro__scroll{margin-top:19px;}
  .pioda-catalog-intro__visual{min-height:200px;height:200px;margin-inline:-20px;}
  .pioda-catalog-intro__book{inset:15% 34% -30% 29%;}
  .pioda-catalog-content{padding-top:28px;padding-bottom:52px;}
  .pioda-catalog-filter,.pioda-catalog-filter--with-finish{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:17px 15px;margin-bottom:24px;}
  .pioda-catalog-filter__select:nth-last-of-type(1){grid-column:1 / -1;}
  .pioda-catalog-filter__submit{grid-column:1 / -1;justify-content:flex-start;}
  .pioda-catalog-section{padding-top:20px;padding-bottom:36px;margin-bottom:18px;}
  .pioda-catalog-section__heading{margin-bottom:20px;gap:12px;}
  .pioda-catalog-section__heading h2{font-size:32px;}
  .pioda-catalog-grid,.pioda-catalog-grid--featured{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 14px;}
  .pioda-catalog-card__details{padding-top:11px;}
  .pioda-catalog-card h3{font-size:13px;}
  .pioda-catalog-card__price{font-size:13px;margin-bottom:10px;}
  .pioda-catalog-card__link{font-size:11px;}
}
@media(max-width:350px) {.pioda-catalog-filter,.pioda-catalog-filter--with-finish{grid-template-columns:1fr;} .pioda-catalog-filter__select:nth-last-of-type(1), .pioda-catalog-filter__submit{grid-column:auto;} }
@media(prefers-reduced-motion:reduce){.pioda-catalog *{transition:none!important;}}

/* Distinzione editoriale discreta per le copertine serigrafate.
   Per immagini reali, viene usata la foto associata in Impostazioni → Pioda Core. */
.pioda-catalog--serigrafate .pioda-catalog-intro__visual { background:#e8e9ed; }
.pioda-catalog--serigrafate .pioda-catalog-intro__book { background:linear-gradient(115deg,#101e32,#29496c 60%,#12273b); border-left-color:#101c2a; }
.pioda-catalog--serigrafate .pioda-catalog-intro__book::after { border-color:#ffffff68; }

/* =========================================================
   1.7.0 — Catalogo unico di scelta copertine (Incise / Foil)
   Compatibile con il tema GeneratePress e shortcode esistenti.
   ========================================================= */
.pioda-catalog [hidden] { display:none!important; }
.pioda-catalog .pioda-cover-heading { margin:0 0 26px; align-items:end; }
.pioda-catalog .pioda-cover-heading__total { color:var(--pc-muted); font:500 13px/1.5 Inter,system-ui,sans-serif; white-space:nowrap; padding-bottom:5px; }
.pioda-catalog .pioda-cover-toolbar {
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr)) auto;
  gap:14px 18px; align-items:end;
  margin:0 0 37px; padding:22px 24px;
  border:1px solid #ebe7e1; border-radius:12px; background:#faf8f5;
}
.pioda-catalog .pioda-cover-toolbar__field { min-width:0; }
.pioda-catalog .pioda-cover-toolbar__field label { display:block; font-size:12px; color:var(--pc-ink); font-weight:700; margin:0 0 9px; }
.pioda-catalog .pioda-cover-toolbar__field select {
  width:100%; max-width:100%; min-height:47px; margin:0;
  background-color:#fff; border:1px solid #dce0e3; border-radius:7px;
  padding:10px 35px 10px 13px; color:var(--pc-ink); font:500 13px/1.3 Inter,system-ui,sans-serif;
  cursor:pointer;
}
.pioda-catalog .pioda-cover-toolbar__field select:focus-visible { border-color:var(--pc-gold); outline:2px solid #b9852e45; outline-offset:2px; }
.pioda-catalog .pioda-cover-toolbar__submit,
.pioda-catalog .pioda-cover-toolbar__clear {
  font:700 12px/1.3 Inter,system-ui,sans-serif; color:var(--pc-gold);
  background:transparent; border:0; cursor:pointer; padding:13px 0;
  display:inline-flex; align-items:center; justify-content:flex-start; gap:7px; white-space:nowrap;
}
.pioda-catalog .pioda-cover-toolbar__submit span { font-size:18px; }
.pioda-catalog .pioda-cover-toolbar__clear { grid-column:1 / -1; justify-self:start; padding:2px 0; }
.pioda-catalog.pioda-catalog--enhanced .pioda-cover-toolbar__submit { display:none; }
.pioda-catalog .pioda-cover-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:36px 24px; }
.pioda-catalog .pioda-cover-grid .pioda-catalog-card { min-width:0; display:flex; flex-direction:column; }
.pioda-catalog .pioda-cover-grid .pioda-catalog-card[hidden] {display:none!important;}
.pioda-catalog .pioda-cover-grid .pioda-catalog-card__media {
  display:flex; align-items:center; justify-content:center;
  aspect-ratio:4 / 4.45; border:0; border-radius:0;
  background:transparent; overflow:hidden;
}
.pioda-catalog .pioda-cover-grid .pioda-catalog-card__media img {
  object-fit:contain; object-position:center center; padding:0; width:100%; height:100%;
  transition:opacity .2s ease;
}
.pioda-catalog .pioda-cover-grid .pioda-catalog-card:hover .pioda-catalog-card__media img {
  transform:none; opacity:.96;
}
.pioda-catalog .pioda-cover-grid .pioda-catalog-card__details {display:flex; flex:1; flex-direction:column; align-items:flex-start; padding-top:15px;}
.pioda-catalog .pioda-cover-grid .pioda-catalog-card__line {color:#a77734; text-transform:uppercase; font-size:10px; font-weight:700; letter-spacing:.08em; margin-bottom:8px!important;}
.pioda-catalog .pioda-cover-grid .pioda-catalog-card h3 {color:var(--pc-ink); font-size:15px; line-height:1.42; margin-bottom:8px!important;}
.pioda-catalog .pioda-cover-grid .pioda-catalog-card__color {color:var(--pc-muted); font-size:12px; line-height:1.4; margin:0 0 10px!important;}
.pioda-catalog .pioda-cover-grid .pioda-catalog-card__price {font-size:15px; font-weight:700; color:var(--pc-ink); margin:2px 0 14px;}
.pioda-catalog .pioda-cover-grid .pioda-catalog-card__link {
  margin-top:auto; display:inline-flex; align-items:center; gap:7px;
  color:var(--pc-gold)!important; font-size:13px; font-weight:800; letter-spacing:.005em;
  border:0; background:transparent; padding:0; text-decoration:none;
}
.pioda-catalog .pioda-cover-grid .pioda-catalog-card__link:hover {color:#94641f!important; text-decoration:underline; text-underline-offset:4px;}
.pioda-catalog .pioda-cover-grid .pioda-catalog-card__link span {font-size:20px; line-height:1; color:inherit;}
.pioda-catalog .pioda-cover-no-results {margin-top:25px;}
.pioda-catalog .pioda-cover-no-results .pioda-catalog-card__link {color:var(--pc-gold)!important;font-weight:800;margin-top:17px;}
@media(max-width:1100px) {
  .pioda-catalog .pioda-cover-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:900px) {
  .pioda-catalog .pioda-cover-toolbar{grid-template-columns:repeat(2,minmax(0,1fr));}
  .pioda-catalog .pioda-cover-toolbar__submit{grid-column:1/-1;}
}
@media(max-width:640px) {
  .pioda-catalog .pioda-cover-heading{align-items:start;flex-direction:column;gap:8px;margin-bottom:22px;}
  .pioda-catalog .pioda-cover-toolbar{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px;padding:16px;margin-bottom:25px;}
  .pioda-catalog .pioda-cover-toolbar__field:nth-child(3){grid-column:1/-1;}
  .pioda-catalog .pioda-cover-toolbar__field label{font-size:11px;}
  .pioda-catalog .pioda-cover-toolbar__field select{font-size:12px;padding-left:9px;min-height:44px;}
  .pioda-catalog .pioda-cover-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 13px;}
  .pioda-catalog .pioda-cover-grid .pioda-catalog-card__media{border-radius:0;}
  .pioda-catalog .pioda-cover-grid .pioda-catalog-card__media img{padding:0;}
  .pioda-catalog .pioda-cover-grid .pioda-catalog-card h3{font-size:13px;}
  .pioda-catalog .pioda-cover-grid .pioda-catalog-card__price{font-size:13px;}
  .pioda-catalog .pioda-cover-grid .pioda-catalog-card__link{font-size:11px;}
}
@media(max-width:350px) {
  .pioda-catalog .pioda-cover-toolbar{grid-template-columns:1fr;}
  .pioda-catalog .pioda-cover-toolbar__field:nth-child(3){grid-column:auto;}
}
