/* PicPanels homepage v0.2 - production refinements */
.pp-eyebrow,.pp-kicker,.pp-print-card__eyebrow{display:block;font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.pp-eyebrow{margin-bottom:18px;color:#ff8a5d}.pp-kicker{margin-bottom:11px;color:#ff8a5d}.pp-kicker--dark{color:#e75624}.pp-hero__copy p{max-width:470px;line-height:1.55}.pp-hero__copy h1{text-wrap:balance}.pp-print-options{padding-top:58px}.pp-section-heading--dark p{max-width:700px;margin:10px auto 0;color:#cbd1d5}.pp-print-card__eyebrow{margin-bottom:7px;color:#777}.pp-print-card__copy{max-width:42%!important;padding-right:18px!important}.pp-print-card__copy p{max-width:300px;line-height:1.5}.pp-text-link{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:54px;margin-top:18px;padding:0 30px;border-radius:999px;background:linear-gradient(135deg,var(--pp-orange),var(--pp-orange-2));color:#fff;font-size:16px;font-weight:800;line-height:1.4;box-shadow:0 12px 35px rgba(255,100,47,.25);transition:transform .2s ease,box-shadow .2s ease}.pp-print-card:hover .pp-text-link,.pp-print-card:focus-visible .pp-text-link{transform:translateY(-2px)}.pp-print-card{transition:transform .25s ease,box-shadow .25s ease}.pp-print-card:hover{transform:translateY(-4px);box-shadow:inset 0 0 0 1px rgba(0,0,0,.06),0 30px 70px rgba(0,0,0,.26)}.pp-categories{padding-top:34px}.pp-category{display:block}.pp-category__image{box-shadow:0 1px 0 rgba(0,0,0,.08)}.pp-category__label{font-size:13px;letter-spacing:.01em}.pp-upload-cta__copy p{line-height:1.55}.pp-upload-types{letter-spacing:.01em}.pp-site-header{transition:background .2s ease,backdrop-filter .2s ease}.pp-site-header.is-scrolled{position:fixed;background:rgba(6,9,11,.9);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08)}
/* Two Ways to Print cards: pure white background, straight images, no image shadow, image column fills the full card height. */
.pp-print-card{background:#fff!important}
.pp-print-card::before{display:none!important}
.pp-product-shot{right:0!important;top:0!important;bottom:0!important;height:100%!important;overflow:hidden!important}
.pp-product-shot--poster,.pp-product-shot--foam{transform:none!important;top:0!important;bottom:0!important;height:100%!important}
.pp-product-shot--foam .pp-foam-edge{display:none}
.pp-product-shot img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;box-shadow:none!important}

/* Homepage benefit strip icons. */
.pp-benefit__icon{width:42px;min-width:42px;height:42px;display:grid;place-items:center;font-size:27px;line-height:1}
.pp-benefit__icon--squares svg{width:31px;height:31px;fill:none;stroke:#fff;stroke-width:2.2;stroke-linejoin:round}
.pp-benefit__icon--emoji{font-size:29px}

/* Product-style quality bar above the homepage footer. */
.pp-home-feature-bar{background:#fff;color:#0d1834;border-top:1px solid #e4e8ef;border-bottom:1px solid #e4e8ef;padding:20px 0}
.pp-home-feature-bar__grid{display:grid;grid-template-columns:repeat(4,1fr)}
.pp-home-feature{min-width:0;padding:0 28px;border-right:1px solid #dfe4ec;margin:50px 0 20px 0!important}
.pp-home-feature:first-child{padding-left:0}
.pp-home-feature:last-child{border-right:0;padding-right:0}
.pp-home-feature strong{display:flex;align-items:center;gap:7px;font-size:20px;font-weight:800;line-height:1.25;color:#0b1630}
.pp-home-feature>span{display:block;margin-top:5px;color:#65718b;font-size:13px;line-height:1.45}
.pp-home-feature__icon,.pp-home-feature__flag{display:inline-grid;place-items:center;flex:0 0 auto;font-size:20px;line-height:1}
.pp-home-feature__feather svg{width:21px;height:21px;fill:none;stroke:#0b1630;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.pp-home-feature__flag{font-size:24px}

/* PDP shared feature bar matches homepage spacing while meeting the footer cleanly. */
.single-product .ppp-page{padding-bottom:0!important}
.single-product .pp-home-feature-bar{padding:20px 0!important;border-top:0!important}
.single-product .pp-home-feature{margin:50px 0 20px 0!important}

@media(min-width:901px){.pp-hero{padding-bottom:56px}}
@media(max-width:900px){.pp-eyebrow{margin-bottom:14px}.pp-print-options{padding-top:46px}.pp-product-shot{top:auto!important;height:62%!important}.pp-product-shot--poster,.pp-product-shot--foam{top:auto!important;height:62%!important}.pp-home-feature-bar__grid{grid-template-columns:1fr 1fr;row-gap:22px}.pp-home-feature:nth-child(2){border-right:0}.pp-home-feature:nth-child(3),.pp-home-feature:nth-child(4){padding-top:4px}}
@media(max-width:640px){.pp-hero__grid{padding-top:80px}.pp-product-shot,.pp-product-shot--poster,.pp-product-shot--foam{height:72%!important}.pp-eyebrow,.pp-kicker,.pp-print-card__eyebrow{font-size:10px}.pp-hero__copy p{line-height:1.45}.pp-section-heading--dark p{font-size:16px}.pp-print-card__copy{max-width:100%!important;width:100%;padding-right:26px!important}.pp-print-card__copy p{max-width:none!important;width:100%}.pp-text-link{margin-top:12px}.pp-home-feature-bar{padding:18px 0}.pp-home-feature-bar__grid{grid-template-columns:1fr}.pp-home-feature{padding:0 0 16px;border-right:0;border-bottom:1px solid #e1e5eb}.pp-home-feature:last-child{padding-bottom:0;border-bottom:0}}


/* Picture-Perfect Offers: premium editorial promotion cards. */
.pp-home-offers{
  background:#f5f3ef;
  color:var(--pp-ink);
  padding:74px 0 80px;
}
.pp-home-offers__heading{
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:32px;
  margin-bottom:30px;
}
.pp-home-offers__heading .pp-kicker{
  margin-bottom:10px;
}
.pp-home-offers__heading h2{
  margin:0;
  font-size:clamp(32px,3.7vw,50px);
  line-height:1.08;
  font-weight:900;
  letter-spacing:-.055em;
}
.pp-home-offers__heading h2 span{
  color:#e75624;
}
.pp-home-offers__intro{
  margin:0 0 4px;
  max-width:410px;
  color:#5d6265;
  font-size:16px;
  line-height:1.6;
}
.pp-home-offers__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
}
.pp-home-offers__grid--1{
  grid-template-columns:minmax(0,480px);
}
.pp-home-offers__grid--2{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.pp-home-offer-card{
  min-width:0;
  overflow:hidden;
  border:1px solid #e8e3dc;
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 30px rgba(32,25,20,.045);
  transition:transform .22s ease,box-shadow .22s ease;
}
.pp-home-offer-card:hover{
  transform:translateY(-4px);
  box-shadow:0 19px 44px rgba(32,25,20,.10);
}
.pp-home-offer-card__link{
  display:flex;
  height:100%;
  flex-direction:column;
  color:#121518;
  outline-offset:4px;
}
.pp-home-offer-card__link:focus-visible{
  outline:3px solid #e75624;
  border-radius:16px;
}
.pp-home-offer-card__media{
  display:block;
  position:relative;
  aspect-ratio:1.6/1;
  overflow:hidden;
  background:radial-gradient(circle at 72% 35%,#fca777 0,transparent 38%),linear-gradient(135deg,#142029 5%,#33444b 100%);
}
.pp-home-offer-card__media::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:30%;
  background:linear-gradient(0deg,rgba(0,0,0,.11),transparent);
  pointer-events:none;
}
.pp-home-offer-card__media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .45s ease;
}
.pp-home-offer-card:hover .pp-home-offer-card__media img{
  transform:scale(1.035);
}
.pp-home-offer-card__graphic{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  isolation:isolate;
}
.pp-home-offer-card__graphic::before,
.pp-home-offer-card__graphic::after{
  content:"";
  position:absolute;
  width:38%;
  aspect-ratio:1;
  border:11px solid rgba(255,255,255,.92);
  background:linear-gradient(140deg,#e9cdb9,#ad7973);
  box-shadow:0 14px 33px rgba(0,0,0,.25);
  transform:rotate(-12deg) translate(-36%,-2%);
}
.pp-home-offer-card__graphic::after{
  width:33%;
  background:linear-gradient(140deg,#95b7ba,#547c83);
  transform:rotate(11deg) translate(58%,12%);
}
.pp-home-offer-card__badge{
  position:absolute;
  z-index:1;
  top:18px;
  left:18px;
  max-width:calc(100% - 36px);
  padding:8px 12px;
  border-radius:999px;
  background:#fff;
  color:#22272b;
  box-shadow:0 6px 20px rgba(0,0,0,.10);
  font-size:11px;
  font-weight:800;
  letter-spacing:.055em;
  text-transform:uppercase;
}
.pp-home-offer-card__body{
  display:flex;
  flex:1;
  flex-direction:column;
  align-items:flex-start;
  padding:25px 26px 28px;
}
.pp-home-offer-card__eyebrow{
  margin-bottom:10px;
  color:#cc4e24;
  font-size:11px;
  font-weight:800;
  letter-spacing:.14em;
  line-height:1.3;
  text-transform:uppercase;
}
.pp-home-offer-card__title{
  margin:0;
  color:#151a1d;
  font-size:clamp(22px,2vw,29px);
  font-weight:850;
  letter-spacing:-.04em;
  line-height:1.12;
  text-wrap:balance;
}
.pp-home-offer-card__description{
  margin:12px 0 0;
  color:#62696d;
  font-size:14px;
  line-height:1.55;
}
.pp-home-offer-card__price{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:9px;
  width:100%;
  margin-top:auto;
  padding-top:23px;
}
.pp-home-offer-card__comparison{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:5px 11px;
  color:#6d7276;
}
.pp-home-offer-card__comparison-label{
  font-size:12px;
  line-height:1.5;
  font-weight:600;
}
.pp-home-offer-card__comparison del{
  color:#7c8185;
  font-size:17px;
  font-weight:650;
  text-decoration-color:#919599;
  text-decoration-thickness:1.5px;
}
.pp-home-offer-card__price-now{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:7px 13px;
}
.pp-home-offer-card__price-label{
  color:#373e42;
  font-size:13px;
  font-weight:750;
}
.pp-home-offer-card__price-now strong{
  color:#e75624;
  font-size:clamp(30px,3vw,35px);
  font-weight:900;
  letter-spacing:-.05em;
  line-height:1.05;
}
.pp-home-offer-card__price-now strong .woocommerce-Price-currencySymbol{
  font-size:.75em;
}
.pp-home-offer-card__price-each{
  display:block;
  font-size:12px;
  font-weight:600;
  color:#666b6e;
  line-height:1.5;
}
.pp-home-offer-card__savings{
  display:inline-block;
  padding:6px 10px;
  border-radius:999px;
  background:#fff1e9;
  color:#9a3c19;
  font-size:11px;
  font-weight:800;
  line-height:1.35;
}
.pp-home-offer-card__price + .pp-home-offer-card__action{
  margin-top:19px;
}
.pp-home-offer-card__action{
  margin-top:17px;
}
.pp-home-offer-card__action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:16px;
  margin-top:auto;
  min-height:44px;
  padding:0 20px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--pp-orange),var(--pp-orange-2));
  color:#fff;
  font-size:13px;
  font-weight:800;
  line-height:1.2;
  box-shadow:0 8px 18px rgba(255,100,47,.16);
}
.pp-home-offer-card__description + .pp-home-offer-card__action{
  margin-top:24px;
}
.pp-home-offer-card__title + .pp-home-offer-card__action{
  margin-top:30px;
}
.pp-home-offer-card__action-arrow{
  font-size:18px;
  font-weight:400;
  line-height:1;
}
@media(max-width:980px){
  .pp-home-offers{padding:60px 0 65px}
  .pp-home-offers__heading{align-items:start;flex-direction:column;gap:12px}
  .pp-home-offers__intro{max-width:620px}
  .pp-home-offers__grid,.pp-home-offers__grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pp-home-offers__grid--1{grid-template-columns:minmax(0,480px)}
  .pp-home-offers__grid--3 .pp-home-offer-card:last-child{
    grid-column:1/-1;
    width:calc(50% - 10px);
    justify-self:center;
  }
}
@media(max-width:640px){
  .pp-home-offers{padding:48px 0 56px}
  .pp-home-offers__heading{margin-bottom:23px}
  .pp-home-offers__heading h2{font-size:clamp(31px,9vw,41px)}
  .pp-home-offers__intro{font-size:14px}
  .pp-home-offers__grid,
  .pp-home-offers__grid--1,
  .pp-home-offers__grid--2{grid-template-columns:minmax(0,1fr);gap:16px}
  .pp-home-offers__grid--3 .pp-home-offer-card:last-child{
    grid-column:auto;
    width:100%;
  }
  .pp-home-offer-card__media{aspect-ratio:1.8/1}
  .pp-home-offer-card__body{padding:21px 22px 24px}
  .pp-home-offer-card__title{font-size:25px}
}
@media(prefers-reduced-motion:reduce){
  .pp-home-offer-card,
  .pp-home-offer-card__media img{transition:none}
  .pp-home-offer-card:hover,
  .pp-home-offer-card:hover .pp-home-offer-card__media img{transform:none}
}
