/** Shopify CDN: Minification failed

Line 18:13 Expected identifier but found whitespace
Line 18:15 Unexpected "{"
Line 18:25 Expected ":"
Line 19:17 Expected identifier but found whitespace
Line 19:19 Unexpected "{"
Line 19:29 Expected ":"
Line 20:15 Expected identifier but found whitespace
Line 20:17 Unexpected "{"
Line 20:27 Expected ":"
Line 21:18 Expected identifier but found whitespace
... and 7 more hidden warnings

**/
/* ===== Pawly theme — base.css ===== */
:root{
  --color-bg: {{ settings.color_background }};
  --color-bg-alt: {{ settings.color_background_alt }};
  --color-text: {{ settings.color_text }};
  --color-primary: {{ settings.color_primary }};
  --color-secondary: {{ settings.color_secondary }};
  --font-heading: 'Fredoka', sans-serif;
  --font-body: 'Manrope', sans-serif;
  --radius-lg: 28px;
  --radius-md: 18px;
  --radius-sm: 12px;
  --page-width: 1280px;
  --ease: cubic-bezier(.22,1,.36,1);
}

*,*::before,*::after{ box-sizing: border-box; }
html{ scroll-behavior: smooth; }
body{
  margin:0;
  background: var(--color-bg);
  color: var(--color-text);
  font-family: var(--font-body);
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
img{ max-width:100%; display:block; }
a{ color:inherit; text-decoration:none; }
button{ font-family: inherit; cursor:pointer; }
h1,h2,h3{ font-family: var(--font-heading); margin:0 0 .4em; line-height:1.1; }
.page-width{ max-width: var(--page-width); margin:0 auto; padding:0 24px; }
.visually-hidden{ position:absolute!important; width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0); }
.skip-to-content-link{ position:fixed; top:-100px; left:1rem; z-index:1000; background:var(--color-primary); color:#fff; padding:.7em 1.2em; border-radius: var(--radius-sm); transition: top .2s var(--ease); }
.skip-to-content-link:focus{ top:1rem; }
::selection{ background: var(--color-primary); color:#fff; }

/* Buttons */
.btn{ display:inline-flex; align-items:center; gap:8px; padding:.9em 1.8em; font-weight:700; font-size:.95rem; border:2px solid transparent; transition: transform .25s var(--ease), box-shadow .25s var(--ease), background .25s var(--ease), color .25s var(--ease); }
.btn--pill{ border-radius: 999px; }
.btn--primary{ background: var(--color-primary); color:#fff; box-shadow: 0 8px 24px -8px color-mix(in srgb, var(--color-primary) 70%, transparent); }
.btn--primary:hover{ transform: translateY(-3px) scale(1.02); box-shadow: 0 14px 30px -8px color-mix(in srgb, var(--color-primary) 80%, transparent); }
.btn--primary .btn__paw{ display:inline-block; transition: transform .3s var(--ease); }
.btn--primary:hover .btn__paw{ transform: rotate(-18deg) scale(1.2); }
.btn--ghost{ background: transparent; color:#fff; border-color: rgba(255,255,255,.35); backdrop-filter: blur(6px); }
.btn--ghost:hover{ background: rgba(255,255,255,.12); border-color:#fff; }
.btn--outline{ background: transparent; color: var(--color-text); border-color: color-mix(in srgb, var(--color-text) 25%, transparent); }
.btn--outline:hover{ border-color: var(--color-primary); color: var(--color-primary); }
.btn--small{ padding:.6em 1.2em; font-size:.82rem; width:100%; justify-content:center; }
.btn:disabled{ opacity:.5; cursor:not-allowed; transform:none!important; }

/* Section shared */
.section{ padding: 96px 0; }
.section__heading{ text-align:center; max-width:640px; margin:0 auto 48px; }
.section__eyebrow{ display:inline-block; font-weight:700; color: var(--color-primary); text-transform:uppercase; letter-spacing:.08em; font-size:.78rem; margin-bottom:10px; }
.section__title{ font-size: clamp(1.8rem, 3.4vw, 2.7rem); }
.section__text{ color: color-mix(in srgb, var(--color-text) 70%, transparent); }

/* Announcement bar (marquee) */
.announcement-bar{ overflow:hidden; padding:8px 0; color:#fff; font-weight:700; font-size:.8rem; letter-spacing:.02em; }
.announcement-bar__track{ display:flex; width:max-content; animation: marquee 18s linear infinite; }
.announcement-bar__track span{ padding:0 2rem; white-space:nowrap; }
@keyframes marquee{ from{ transform:translateX(0);} to{ transform:translateX(-50%);} }

/* Header */
.site-header{ position: sticky; top:0; z-index:100; background: color-mix(in srgb, var(--color-bg) 82%, transparent); backdrop-filter: blur(14px); border-bottom:1px solid rgba(255,255,255,.06); transition: box-shadow .3s var(--ease); }
.site-header.is-scrolled{ box-shadow: 0 10px 30px -20px rgba(0,0,0,.6); }
.site-header__inner{ display:flex; align-items:center; gap:18px; padding:12px 24px; }
.site-header__logo{ display:flex; align-items:center; width:clamp(150px, 18vw, 220px); flex:0 1 220px; margin-right:auto; }
.site-header__logo-image{ display:block; width:100%; height:auto; max-height:68px; object-fit:contain; object-position:center; }
.site-header__nav{ display:none; gap: 32px; }
.site-header__nav-link{ position:relative; font-weight:600; font-size:.92rem; padding:4px 0; }
.site-header__nav-link::after{ content:''; position:absolute; left:0; bottom:-2px; width:0; height:2px; background: var(--color-primary); transition: width .3s var(--ease); }
.site-header__nav-link:hover::after{ width:100%; }
.site-header__icons{ display:flex; align-items:center; gap:6px; }
.site-header__icon-btn{ position:relative; display:flex; align-items:center; justify-content:center; width:40px; height:40px; border-radius:50%; transition: background .25s var(--ease), transform .25s var(--ease); }
.site-header__icon-btn:hover{ background: rgba(255,255,255,.08); transform: translateY(-2px); }
.site-header__cart-count{ position:absolute; top:2px; right:2px; background: var(--color-primary); color:#fff; font-size:.62rem; font-weight:700; width:16px; height:16px; border-radius:50%; display:flex; align-items:center; justify-content:center; }
.site-header__menu-toggle{ display:flex; flex-direction:column; gap:5px; background:none; border:none; padding:8px; }
.site-header__menu-toggle span{ width:22px; height:2px; background: var(--color-text); border-radius:2px; transition: transform .3s var(--ease), opacity .3s var(--ease); }

.mobile-nav{ max-height:0; overflow:hidden; transition: max-height .35s var(--ease); border-bottom: 1px solid transparent; }
.mobile-nav.is-open{ max-height:400px; border-color: rgba(255,255,255,.06); }
.mobile-nav nav{ display:flex; flex-direction:column; padding:8px 24px 20px; }
.mobile-nav a{ padding:12px 0; font-weight:600; border-bottom:1px solid rgba(255,255,255,.06); }

@media (min-width: 900px){
  .site-header__menu-toggle{ display:none; }
  .site-header__nav{ display:flex; }
  .mobile-nav{ display:none; }
}


@media (max-width: 899px){
  .site-header__inner{ display:grid; grid-template-columns:44px minmax(0,1fr) 132px; gap:8px; align-items:center; }
  .site-header__menu-toggle{ justify-self:start; }
  .site-header__logo{ width:min(100%, 170px); max-width:170px; flex:none; justify-self:center; margin:0; }
  .site-header__logo-image{ max-height:58px; width:100%; object-position:center; }
  .site-header__icons{ justify-self:end; gap:2px; }
  .site-header__icon-btn{ width:36px; height:36px; }
}
\n@media (prefers-reduced-motion: reduce){\n  .btn--hero-main, .btn--hero-main::before, .btn--hero-main::after, .btn--hero-main .btn__paw{ animation:none; }\n}\n\n/* Hero video */
.hero-video{ position:relative; height:clamp(500px, 70vh, 760px); min-height:0; display:flex; align-items:center; overflow:hidden; }
.hero-video__bg{ position:absolute; inset:0; z-index:0; overflow:hidden; }
.hero-video__bg video, .hero-video__bg img{ position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
.hero-video__overlay{ position:absolute; inset:0; background: linear-gradient(180deg, rgba(15,23,32,.55) 0%, rgba(15,23,32,.75) 55%, var(--color-bg) 100%); }
.hero-video__paws{ position:absolute; inset:0; z-index:1; pointer-events:none; }
.hero-video__paws .paw{ position:absolute; width:34px; height:34px; color:#fff; opacity:.055; animation: heroPawDrift 14s ease-in-out infinite; filter:blur(.2px); }
.paw--1{ top:16%; left:8%; animation-delay:0s; width:30px; }
.paw--2{ top:64%; left:15%; animation-delay:3s; width:24px; }
.paw--3{ top:26%; right:11%; animation-delay:6s; width:38px; }
.paw--4{ top:72%; right:17%; animation-delay:9s; width:28px; }
.paw--5{ top:44%; left:43%; animation-delay:4.5s; width:22px; opacity:.035; }
.paw--6{ top:82%; right:42%; animation-delay:11s; width:20px; opacity:.03; }
@keyframes float{ 0%,100%{ transform: translateY(0) rotate(0deg);} 50%{ transform: translateY(-22px) rotate(12deg);} }
@keyframes heroPawDrift{ 0%,100%{ opacity:.025; transform:translate3d(0,0,0) rotate(-8deg); } 50%{ opacity:.07; transform:translate3d(5px,-10px,0) rotate(5deg); } }

.hero-video__content{ position:relative; z-index:2; text-align:center; }
.hero-video__eyebrow{ display:inline-block; padding:.5em 1.2em; border-radius:999px; background: rgba(255,255,255,.1); backdrop-filter: blur(6px); font-weight:700; font-size:.82rem; letter-spacing:.04em; color:#fff; margin-bottom:22px; }
.hero-video__heading{ color:#fff; font-size: clamp(2.6rem, 7vw, 5rem); margin-bottom:20px; }
.hero-video__heading .word{ display:inline-block; overflow:hidden; vertical-align:top; margin:0 .18em 0 0; }
.hero-video__heading .word__inner{ display:inline-block; }
.hero-video__text{ color: rgba(255,255,255,.82); font-size:1.15rem; max-width:560px; margin:0 auto 34px; }
.hero-video__actions{ display:flex; gap:16px; justify-content:center; flex-wrap:wrap; margin-top:14px; }

/* hero entrance animation, driven by JS adding .is-ready */
[data-hero-anim]{ opacity:0; transform: translateY(28px); }
.hero-video.is-ready [data-hero-anim="1"]{ animation: rise .8s var(--ease) .1s forwards; }
.hero-video.is-ready [data-hero-anim="2"] .word__inner{ animation: rise .9s var(--ease) forwards; }
.hero-video.is-ready [data-hero-anim="2"]{ opacity:1; transform:none; }
.hero-video.is-ready [data-hero-anim="2"] .word:nth-child(1) .word__inner{ animation-delay:.15s; }
.hero-video.is-ready [data-hero-anim="2"] .word:nth-child(2) .word__inner{ animation-delay:.22s; }
.hero-video.is-ready [data-hero-anim="2"] .word:nth-child(3) .word__inner{ animation-delay:.29s; }
.hero-video.is-ready [data-hero-anim="2"] .word:nth-child(4) .word__inner{ animation-delay:.36s; }
.hero-video.is-ready [data-hero-anim="2"] .word:nth-child(5) .word__inner{ animation-delay:.43s; }
.hero-video.is-ready [data-hero-anim="2"] .word:nth-child(6) .word__inner{ animation-delay:.5s; }
.hero-video.is-ready [data-hero-anim="2"] .word__inner{ opacity:0; transform: translateY(100%); }
.hero-video.is-ready [data-hero-anim="3"]{ animation: rise .8s var(--ease) .5s forwards; }
.hero-video.is-ready [data-hero-anim="4"]{ animation: rise .8s var(--ease) .65s forwards; }
@keyframes rise{ to{ opacity:1; transform:none; } }

/* Hero CTA — continuous, polished attention animation */
.btn--hero-main{
  position:relative;
  isolation:isolate;
  overflow:visible;
  padding:1.15em 2.7em;
  min-width:190px;
  justify-content:center;
  font-size:1.08rem;
  letter-spacing:.01em;
  background:linear-gradient(110deg, var(--color-primary) 0%, color-mix(in srgb, var(--color-primary) 82%, #fff) 48%, var(--color-primary) 100%);
  background-size:220% 100%;
  opacity:.93;
  backdrop-filter:blur(3px);
  box-shadow:0 14px 34px -10px color-mix(in srgb, var(--color-primary) 72%, transparent);
  animation:heroButtonGlow 2.8s ease-in-out infinite, heroButtonGradient 6s ease-in-out infinite;
  background-color: color-mix(in srgb, var(--color-primary) 82%, transparent);
  background-blend-mode: normal;
}
.btn--hero-main::after{
  content:'';
  position:absolute;
  inset:-7px;
  z-index:-2;
  border-radius:inherit;
  border:1px solid color-mix(in srgb, var(--color-primary) 58%, transparent);
  opacity:.45;
  transform:scale(.97);
  animation:heroButtonRing 2.8s ease-in-out infinite;
  pointer-events:none;
}
.btn--hero-main::before{
  content:'';
  position:absolute;
  z-index:1;
  top:-70%;
  left:-42%;
  width:28%;
  height:240%;
  transform:rotate(22deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.52),transparent);
  filter:blur(3px);
  opacity:0;
  animation:heroButtonShine 4.8s cubic-bezier(.4,0,.2,1) infinite;
  pointer-events:none;
}
.btn--hero-main:hover{
  transform:translateY(-4px) scale(1.045);
  box-shadow:0 22px 48px -10px color-mix(in srgb, var(--color-primary) 88%, transparent);
  animation:heroButtonGlowHover 1.8s ease-in-out infinite, heroButtonGradient 3s ease-in-out infinite;
}
.btn--hero-main .btn__paw{
  position:relative;
  z-index:2;
  display:inline-block;
  transform-origin:50% 70%;
  animation:heroPaw 1.45s cubic-bezier(.45,.05,.55,.95) infinite;
}
@keyframes heroButtonGlow{
  0%,100%{box-shadow:0 13px 32px -12px color-mix(in srgb, var(--color-primary) 72%, transparent);}
  50%{box-shadow:0 18px 42px -9px color-mix(in srgb, var(--color-primary) 94%, transparent);}
}
@keyframes heroButtonGlowHover{
  0%,100%{box-shadow:0 18px 40px -10px color-mix(in srgb, var(--color-primary) 80%, transparent);}
  50%{box-shadow:0 23px 52px -8px color-mix(in srgb, var(--color-primary) 100%, transparent);}
}
@keyframes heroButtonGradient{
  0%,100%{background-position:0% 50%;}
  50%{background-position:100% 50%;}
}
@keyframes heroButtonRing{
  0%,100%{opacity:.25;transform:scale(.98);}
  50%{opacity:.7;transform:scale(1.035);}
}
@keyframes heroButtonShine{
  0%,35%{left:-42%;opacity:0;}
  45%{opacity:.9;}
  60%,100%{left:128%;opacity:0;}
}
@keyframes heroPaw{
  0%,100%{transform:rotate(0deg) scale(1);}
  28%{transform:rotate(-9deg) scale(1.08);}
  48%{transform:rotate(7deg) scale(1.15);}
  68%{transform:rotate(-3deg) scale(1.04);}
}

/* Reveal on scroll (JS toggles .is-visible) */
[data-reveal]{ opacity:0; transform: translateY(36px); transition: opacity .7s var(--ease), transform .7s var(--ease); }
[data-reveal].is-visible{ opacity:1; transform:none; }

/* Product grid & cards */
.product-grid{ display:grid; grid-template-columns: repeat(2,1fr); gap:20px; }
@media (min-width:700px){ .product-grid{ grid-template-columns: repeat(3,1fr); gap:28px; } }
@media (min-width:1100px){ .product-grid{ grid-template-columns: repeat(4,1fr); } }

.product-card{ background: var(--color-bg-alt); border-radius: var(--radius-md); overflow:hidden; transition: transform .35s var(--ease), box-shadow .35s var(--ease); position:relative; }
.product-card:hover{ transform: translateY(-8px); box-shadow: 0 20px 40px -20px rgba(0,0,0,.5); }
.product-card__media{ position:relative; aspect-ratio:1/1; overflow:hidden; background: color-mix(in srgb, var(--color-bg-alt) 60%, #000); }
.product-card__img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition: opacity .5s var(--ease), transform .6s var(--ease); }
.product-card__img--primary{ opacity:1; }
.product-card__img--hover{ opacity:0; }
.product-card:hover .product-card__img--primary{ opacity:0; }
.product-card:hover .product-card__img--hover{ opacity:1; }
.product-card:hover .product-card__img{ transform: scale(1.06); }
.product-card__placeholder{ position:absolute; inset:0; display:flex; align-items:center; justify-content:center; font-size:2.6rem; opacity:.35; }
.product-card__placeholder--large{ aspect-ratio:1/1; border-radius: var(--radius-md); background: var(--color-bg-alt); }
.product-card__badge{ position:absolute; top:12px; left:12px; background: var(--color-secondary); color:#0f1720; font-weight:800; font-size:.7rem; padding:.35em .8em; border-radius:999px; z-index:2; }
.product-card__paw-hover{ position:absolute; bottom:10px; right:10px; width:26px; height:26px; color:#fff; opacity:0; transform: scale(.4) rotate(-30deg); transition: all .35s var(--ease); z-index:2; }
.product-card:hover .product-card__paw-hover{ opacity:.85; transform: scale(1) rotate(0deg); }
.product-card__info{ padding:16px 16px 20px; }
.product-card__title{ font-size:.98rem; margin-bottom:8px; font-family: var(--font-body); font-weight:700; }
.product-card__title a:hover{ color: var(--color-primary); }
.product-card__price{ font-weight:800; margin-bottom:12px; }
.product-card__price--compare{ text-decoration: line-through; opacity:.5; font-weight:500; margin-right:8px; font-size:.85rem; }
.product-card__price--sale{ color: var(--color-primary); }
.featured-collection__cta{ text-align:center; margin-top:44px; }

/* Image with text */
.image-with-text{ display:grid; grid-template-columns:1fr; gap:40px; align-items:center; }
@media (min-width:900px){ .image-with-text{ grid-template-columns:1fr 1fr; gap:64px; } .image-with-text--right{ direction: rtl; } .image-with-text--right > *{ direction: ltr; } }
.image-with-text__media{ position:relative; border-radius: var(--radius-lg); overflow:hidden; aspect-ratio: 4/3; }
.image-with-text__media img{ width:100%; height:100%; object-fit:cover; }
.image-with-text__placeholder{ width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:3rem; background: var(--color-bg-alt); }
.image-with-text__blob{ position:absolute; width:140px; height:140px; background: var(--color-primary); opacity:.25; border-radius:50%; filter: blur(40px); bottom:-40px; right:-40px; }
.image-with-text__text{ color: color-mix(in srgb, var(--color-text) 75%, transparent); margin-bottom:24px; }

/* Rich text / features */
.rich-text__inner{ text-align:center; max-width:640px; margin:0 auto 48px; }
.rich-text__features{ display:grid; grid-template-columns:1fr; gap:20px; }
@media (min-width:700px){ .rich-text__features{ grid-template-columns: repeat(3,1fr); } }
.feature-card{ background: var(--color-bg-alt); border-radius: var(--radius-md); padding:32px 24px; text-align:center; transition: transform .3s var(--ease); }
.feature-card:hover{ transform: translateY(-6px); }
.feature-card__icon{ font-size:2.2rem; display:block; margin-bottom:14px; }
.feature-card h3{ font-size:1.05rem; margin-bottom:6px; }
.feature-card p{ color: color-mix(in srgb, var(--color-text) 65%, transparent); font-size:.92rem; margin:0; }

/* Newsletter */
.newsletter{ position:relative; overflow:hidden; padding:80px 0; background: linear-gradient(135deg, var(--color-primary), color-mix(in srgb, var(--color-primary) 60%, var(--color-secondary))); text-align:center; color:#fff; }
.newsletter__paws{ position:absolute; inset:0; display:flex; justify-content:space-around; align-items:center; font-size:3rem; opacity:.15; pointer-events:none; }
.newsletter__paws span{ animation: float 6s ease-in-out infinite; }
.newsletter__paws span:nth-child(2n){ animation-delay:1.5s; }
.newsletter__heading{ font-size: clamp(1.6rem,3vw,2.2rem); margin-bottom:10px; }
.newsletter__text{ opacity:.9; max-width:460px; margin:0 auto 28px; }
.newsletter__form{ display:flex; max-width:420px; margin:0 auto; background:#fff; border-radius:999px; padding:6px; gap:6px; }
.newsletter__form input{ flex:1; border:none; background:none; padding:0 1.2em; font-size:.95rem; color:#0f1720; outline:none; }
.newsletter__form button{ width:44px; height:44px; border-radius:50%; border:none; background:#0f1720; color:#fff; font-size:1.1rem; transition: transform .25s var(--ease); }
.newsletter__form button:hover{ transform: rotate(90deg); background: var(--color-primary); }
.newsletter__success{ font-weight:700; }

/* Footer */
.site-footer{ padding:64px 0 0; }
.site-footer__inner{ display:grid; grid-template-columns:1fr; gap:40px; padding-bottom:48px; }
@media (min-width:700px){ .site-footer__inner{ grid-template-columns: 1.6fr repeat(2,1fr); } }
.site-footer__logo{ font-family: var(--font-heading); font-weight:700; font-size:1.2rem; display:block; margin-bottom:10px; }
.site-footer__brand p{ color: color-mix(in srgb, var(--color-text) 60%, transparent); max-width:280px; }
.site-footer__social{ display:flex; gap:10px; margin-top:16px; }
.site-footer__social a{ width:38px; height:38px; border-radius:50%; background: var(--color-bg-alt); display:flex; align-items:center; justify-content:center; transition: transform .25s var(--ease), background .25s var(--ease); }
.site-footer__social a:hover{ background: var(--color-primary); transform: translateY(-3px); }
.site-footer__col h4{ margin-bottom:14px; font-size:.95rem; }
.site-footer__col a{ display:block; padding:6px 0; color: color-mix(in srgb, var(--color-text) 65%, transparent); font-size:.9rem; }
.site-footer__col a:hover{ color: var(--color-primary); }
.site-footer__bottom{ border-top:1px solid rgba(255,255,255,.06); padding:22px 24px; font-size:.8rem; opacity:.55; text-align:center; }

/* Product page */
.product-section{ padding:64px 0 100px; }
.product-section__grid{ display:grid; grid-template-columns:1fr; gap:48px; }
@media (min-width:900px){ .product-section__grid{ grid-template-columns:1fr 1fr; gap:64px; } }
.product-section__main-image{ border-radius: var(--radius-lg); overflow:hidden; aspect-ratio:1/1; background: var(--color-bg-alt); }
.product-section__main-image img{ width:100%; height:100%; object-fit:cover; }
.product-section__thumbs{ display:flex; gap:10px; margin-top:14px; flex-wrap:wrap; }
.product-section__thumb{ width:64px; height:64px; border-radius:10px; overflow:hidden; border:2px solid transparent; background:none; padding:0; opacity:.6; transition: opacity .2s, border-color .2s; }
.product-section__thumb:hover, .product-section__thumb.is-active{ opacity:1; border-color: var(--color-primary); }
.product-section__thumb img{ width:100%; height:100%; object-fit:cover; }
.product-section__title{ font-size: clamp(1.7rem,3vw,2.4rem); }
.product-section__price{ font-size:1.4rem; font-weight:800; margin-bottom:20px; }
.product-section__price--compare{ text-decoration: line-through; opacity:.5; font-weight:500; margin-right:10px; font-size:1rem; }
.product-section__price--sale{ color: var(--color-primary); }
.product-section__description{ color: color-mix(in srgb, var(--color-text) 78%, transparent); margin-bottom:28px; }
.product-section__option{ margin-bottom:16px; }
.product-section__option label{ display:block; font-weight:700; font-size:.85rem; margin-bottom:6px; }
.product-section__option select, .product-section__quantity input{ width:100%; max-width:240px; padding:.7em 1em; border-radius: var(--radius-sm); border:1px solid rgba(255,255,255,.15); background: var(--color-bg-alt); color: var(--color-text); }
.product-section__quantity{ margin-bottom:22px; }
.product-section__quantity label{ display:block; font-weight:700; font-size:.85rem; margin-bottom:6px; }
.product-section__add{ width:100%; justify-content:center; font-size:1.05rem; }
.product-section__perks{ list-style:none; padding:0; margin-top:28px; display:flex; flex-direction:column; gap:8px; font-size:.9rem; opacity:.8; }

/* Cart */
.cart-table{ width:100%; border-collapse: collapse; margin-bottom:24px; }
.cart-table th{ text-align:left; padding:10px; font-size:.8rem; text-transform:uppercase; letter-spacing:.04em; opacity:.6; border-bottom:1px solid rgba(255,255,255,.1); }
.cart-table td{ padding:14px 10px; border-bottom:1px solid rgba(255,255,255,.06); vertical-align:middle; }
.cart-table__product{ display:flex; align-items:center; gap:14px; }
.cart-table__product img{ width:64px; height:64px; object-fit:cover; border-radius:10px; }
.cart-table input[type=number]{ width:64px; padding:.5em; border-radius:8px; border:1px solid rgba(255,255,255,.15); background: var(--color-bg-alt); color: var(--color-text); }
.cart-summary{ display:flex; justify-content:space-between; padding:16px 0; font-size:1.2rem; border-top:2px solid rgba(255,255,255,.1); margin-bottom:20px; }
.cart-form{ display:flex; flex-direction:column; gap:14px; }
.cart-form button{ align-self:flex-end; }
.cart-empty{ text-align:center; padding:60px 0; }
.cart-empty p{ font-size:1.3rem; margin-bottom:20px; }

/* Search / pagination / 404 */
.search-form{ display:flex; gap:10px; max-width:420px; margin:0 auto 40px; }
.search-form input{ flex:1; padding:.8em 1.2em; border-radius:999px; border:1px solid rgba(255,255,255,.15); background: var(--color-bg-alt); color: var(--color-text); }
.search-form button{ width:44px; height:44px; border-radius:50%; background: var(--color-primary); color:#fff; border:none; display:flex; align-items:center; justify-content:center; }
.pagination{ display:flex; justify-content:center; gap:14px; margin-top:48px; }
.pagination a, .pagination span{ padding:.5em 1em; border-radius:8px; }
.pagination .current{ background: var(--color-primary); color:#fff; }
.error-404{ text-align:center; padding:120px 0; }
.error-404__paw{ font-size:4rem; display:block; margin-bottom:20px; animation: float 4s ease-in-out infinite; }

/* Cart notification toast */
.cart-notification{ position:fixed; bottom:24px; right:24px; z-index:999; transform: translateY(140%); opacity:0; transition: transform .4s var(--ease), opacity .4s var(--ease); }
.cart-notification.is-visible{ transform:none; opacity:1; }
.cart-notification__inner{ display:flex; align-items:center; gap:10px; background: var(--color-bg-alt); border:1px solid rgba(255,255,255,.1); padding:16px 22px; border-radius: var(--radius-md); box-shadow: 0 16px 40px -12px rgba(0,0,0,.6); font-weight:700; }
.cart-notification__icon{ font-size:1.3rem; }

@media (prefers-reduced-motion: reduce){
  *{ animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; scroll-behavior:auto !important; }
}

.hero-video__default-video { width: 100%; height: 100%; object-fit: cover; display: block; }

/* ===== Pawly visual upgrade ===== */
.section{ position:relative; }
.section:nth-of-type(2){
  background: linear-gradient(180deg, color-mix(in srgb, var(--color-secondary) 8%, var(--color-bg)) 0%, var(--color-bg) 100%);
  border-radius: 42px;
  margin: 18px 12px 0;
  padding-left: 12px;
  padding-right: 12px;
}
.section:nth-of-type(3){
  background: linear-gradient(135deg, color-mix(in srgb, var(--color-primary) 11%, var(--color-bg)) 0%, color-mix(in srgb, var(--color-secondary) 8%, var(--color-bg)) 100%);
  border-radius: 42px;
  margin: 28px 12px 0;
  overflow:hidden;
}
.section:nth-of-type(4){
  background: color-mix(in srgb, var(--color-bg-alt) 48%, var(--color-bg));
  border-radius: 42px;
  margin: 28px 12px;
}
.section:nth-of-type(2)::before,
.section:nth-of-type(3)::before,
.section:nth-of-type(4)::before{
  content:'🐾'; position:absolute; top:24px; right:5%; font-size:3.5rem; opacity:.08; transform:rotate(-18deg); pointer-events:none;
}

.section__heading{ position:relative; z-index:1; }
.section__eyebrow{ padding:.45em .9em; border-radius:999px; background:color-mix(in srgb, var(--color-primary) 13%, transparent); }

/* Product preview cards */
.product-card--placeholder{ background:transparent; box-shadow:0 12px 30px rgba(0,0,0,.07); }
.product-card--placeholder .product-card__media{ background:#ddd; }
.product-card__media--preview{ aspect-ratio: 1/1.08; }
.product-card__media--preview .product-card__img{ position:absolute; }
.product-card__preview-shade{ position:absolute; inset:0; background:linear-gradient(180deg, transparent 42%, rgba(15,23,32,.55) 100%); }
.product-card__preview-paw{ position:absolute; right:16px; bottom:14px; font-size:1.7rem; transform:rotate(-15deg); filter:drop-shadow(0 5px 8px rgba(0,0,0,.2)); animation:float 5s ease-in-out infinite; }
.product-card--placeholder .product-card__info{ background:var(--color-bg); border-radius:0 0 var(--radius-md) var(--radius-md); }
.product-card__preview-note{ margin:0; font-size:.78rem; opacity:.55; }

/* Richer image-with-text fallback */
.image-with-text__media{ box-shadow:0 24px 60px -30px rgba(0,0,0,.45); min-height:320px; }
.image-with-text__placeholder{ position:absolute; inset:0; overflow:hidden; }
.image-with-text__placeholder img{ width:100%; height:100%; object-fit:cover; }
.image-with-text__placeholder-overlay{ position:absolute; inset:0; background:linear-gradient(180deg, rgba(15,23,32,.05), rgba(15,23,32,.5)); }
.image-with-text__pet-badge{ position:absolute; left:18px; bottom:18px; display:flex; align-items:center; gap:8px; padding:10px 14px; border-radius:999px; background:rgba(255,255,255,.92); color:#151a1f; font-weight:800; font-size:.82rem; box-shadow:0 10px 25px rgba(0,0,0,.15); backdrop-filter:blur(8px); }
.image-with-text__mini-pet{ position:absolute; right:18px; top:18px; width:56px; height:56px; display:grid; place-items:center; border-radius:50%; background:var(--color-secondary); font-size:1.8rem; box-shadow:0 12px 24px rgba(0,0,0,.16); animation:float 5s ease-in-out infinite; }
.image-with-text__content{ position:relative; z-index:1; padding:10px 0; }
.image-with-text__content::after{ content:'🐾'; display:block; font-size:2rem; opacity:.18; margin-top:18px; }

/* Feature cards become visual rather than flat white */
.rich-text__features{ position:relative; }
.feature-card{ border:1px solid color-mix(in srgb, var(--color-primary) 14%, transparent); background:linear-gradient(145deg, color-mix(in srgb, var(--color-bg) 92%, var(--color-primary)), color-mix(in srgb, var(--color-bg-alt) 55%, var(--color-bg))); box-shadow:0 14px 34px rgba(0,0,0,.07); }
.feature-card:nth-child(2){ transform:translateY(10px); }
.feature-card:nth-child(2):hover{ transform:translateY(4px); }
.feature-card__icon{ width:64px; height:64px; margin:0 auto 16px; display:grid; place-items:center; border-radius:22px; background:color-mix(in srgb, var(--color-secondary) 28%, var(--color-bg)); box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-secondary) 28%, transparent); }
.rich-text__paw-deco{ position:absolute; left:-8px; bottom:-20px; font-size:4rem; opacity:.07; transform:rotate(20deg); pointer-events:none; }

/* Make empty states feel intentional, never like broken space */
.product-card--placeholder[data-reveal]{ opacity:1; transform:none; }
.product-card--placeholder[data-reveal].is-visible{ opacity:1; transform:none; }

@media (max-width:699px){
  .section{ padding:64px 0; }
  .section:nth-of-type(2),.section:nth-of-type(3),.section:nth-of-type(4){ margin-left:0; margin-right:0; border-radius:28px; padding-left:18px; padding-right:18px; }
  .section__heading{ margin-bottom:30px; }
  .product-grid{ gap:14px; }
  .product-card__info{ padding:13px 12px 16px; }
  .image-with-text{ gap:28px; }
  .image-with-text__media{ min-height:280px; }
  .feature-card:nth-child(2){ transform:none; }
}

/* ===== Pawly 3.0 — playful premium layer ===== */
body.gradient{
  background-color:var(--color-bg);
  background-image:
    radial-gradient(circle at 8% 18%, color-mix(in srgb,var(--color-secondary) 10%,transparent) 0 90px,transparent 91px),
    radial-gradient(circle at 92% 42%, color-mix(in srgb,var(--color-primary) 9%,transparent) 0 130px,transparent 131px),
    radial-gradient(circle at 18% 82%, color-mix(in srgb,var(--color-primary) 6%,transparent) 0 160px,transparent 161px);
  background-attachment:fixed;
}
body.gradient #MainContent{position:relative;isolation:isolate;}
body.gradient #MainContent:before{content:'🐾';position:fixed;z-index:-1;right:-70px;top:35%;font-size:15rem;opacity:.025;transform:rotate(-20deg);pointer-events:none;}

.pawly-categories{overflow:hidden;}
.pawly-category-grid{display:grid;grid-template-columns:1.25fr .9fr .9fr;grid-template-rows:270px 270px;gap:18px;}
.pawly-category-card{position:relative;display:block;overflow:hidden;border-radius:32px;min-height:270px;background:var(--color-bg-alt);box-shadow:0 18px 45px rgba(0,0,0,.09);transform:translateZ(0);transition:transform .55s var(--ease),box-shadow .55s var(--ease);}
.pawly-category-card--wide{grid-row:span 2;}
.pawly-category-card img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease);}
.pawly-category-card__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.03) 25%,rgba(0,0,0,.7) 100%);}
.pawly-category-card__content{position:absolute;left:24px;right:20px;bottom:22px;color:#fff;display:flex;flex-direction:column;align-items:flex-start;}
.pawly-category-card__content small{text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:.68rem;opacity:.82;margin-bottom:7px;}
.pawly-category-card__content strong{font:600 clamp(1.45rem,2.5vw,2.2rem)/1.03 var(--font-heading);letter-spacing:-.02em;}
.pawly-category-card__content span{margin-top:13px;font-weight:800;font-size:.8rem;padding:7px 12px;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:rgba(255,255,255,.1);backdrop-filter:blur(8px);}
.pawly-category-card:hover{transform:translateY(-8px);box-shadow:0 28px 60px rgba(0,0,0,.15);}
.pawly-category-card:hover img{transform:scale(1.07);}
.pawly-category-card__paw{position:absolute;right:22px;top:20px;font-size:2rem;filter:drop-shadow(0 8px 14px rgba(0,0,0,.2));animation:float 4.5s ease-in-out infinite;}
.pawly-category-card--accent{background:linear-gradient(135deg,var(--color-primary),color-mix(in srgb,var(--color-secondary) 60%,var(--color-primary)));color:#fff;overflow:hidden;}
.pawly-category-card--accent .pawly-category-card__content{color:#fff;}
.pawly-category-card__giant-paw{position:absolute;right:-15px;top:-22px;font-size:9rem;opacity:.15;transform:rotate(18deg);}
.pawly-category-card__orbit{position:absolute;right:22px;bottom:20px;font-size:2rem;animation:spin 7s linear infinite;}

.pawly-promise{padding:18px 0;}
.pawly-promise__grid{display:grid;grid-template-columns:repeat(4,1fr);background:color-mix(in srgb,var(--color-bg-alt) 70%,var(--color-bg));border:1px solid color-mix(in srgb,var(--color-primary) 14%,transparent);border-radius:26px;overflow:hidden;box-shadow:0 18px 45px rgba(0,0,0,.06);}
.pawly-promise__grid>div{padding:25px 22px;display:grid;grid-template-columns:42px 1fr;column-gap:12px;align-items:center;border-right:1px solid color-mix(in srgb,var(--color-text) 9%,transparent);}
.pawly-promise__grid>div:last-child{border-right:0;}
.pawly-promise__icon{grid-row:span 2;width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:color-mix(in srgb,var(--color-primary) 13%,transparent);font-size:1.15rem;}
.pawly-promise strong{font-size:.84rem;}
.pawly-promise small{font-size:.72rem;opacity:.58;line-height:1.3;}

.pawly-moments{margin:30px 0;padding:105px 0;overflow:hidden;background:linear-gradient(135deg,color-mix(in srgb,var(--color-secondary) 13%,var(--color-bg)) 0%,var(--color-bg) 55%,color-mix(in srgb,var(--color-primary) 8%,var(--color-bg)) 100%);}
.pawly-moments__inner{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:80px;}
.pawly-moments__copy{max-width:530px;}
.pawly-moments__copy h2{font-size:clamp(2.5rem,5vw,5rem);letter-spacing:-.04em;margin:8px 0 22px;}
.pawly-moments__copy h2 em{font-style:normal;color:var(--color-primary);}
.pawly-moments__copy p{font-size:1.05rem;opacity:.72;max-width:470px;margin-bottom:28px;}
.pawly-moments__visual{position:relative;min-height:580px;}
.pawly-moments__photo{position:absolute;overflow:hidden;border-radius:36px;box-shadow:0 30px 70px rgba(0,0,0,.18);border:8px solid color-mix(in srgb,var(--color-bg) 88%,transparent);}
.pawly-moments__photo img{width:100%;height:100%;object-fit:cover;}
.pawly-moments__photo--main{width:62%;height:540px;right:17%;top:10px;transform:rotate(3deg);}
.pawly-moments__photo--small{width:35%;height:270px;right:0;bottom:15px;transform:rotate(-7deg);}
.pawly-moments__sticker{position:absolute;left:2%;top:55px;width:125px;height:125px;border-radius:50%;display:grid;place-items:center;text-align:center;background:var(--color-secondary);color:#111;font:800 .78rem/1.1 var(--font-heading);letter-spacing:.04em;transform:rotate(-12deg);box-shadow:0 16px 35px rgba(0,0,0,.15);animation:float 5s ease-in-out infinite;}

.pawly-final-cta{position:relative;overflow:hidden;margin:30px 0 0;border-radius:42px 42px 0 0;background:var(--color-text);color:var(--color-bg);padding:105px 0;text-align:center;}
.pawly-final-cta__inner{position:relative;z-index:2;}
.pawly-final-cta h2{font-size:clamp(2.8rem,6vw,5.5rem);letter-spacing:-.05em;margin:8px 0 18px;}
.pawly-final-cta h2 span{color:var(--color-primary);}
.pawly-final-cta p{opacity:.65;max-width:520px;margin:0 auto 28px;font-size:1rem;}
.pawly-final-cta__paws{position:absolute;inset:0;display:flex;justify-content:space-around;align-items:center;font-size:5rem;opacity:.045;transform:rotate(-12deg) scale(1.3);pointer-events:none;}

@keyframes spin{to{transform:rotate(360deg);}}
@media(max-width:850px){
 .pawly-category-grid{grid-template-columns:1fr 1fr;grid-template-rows:260px 260px 260px;}
 .pawly-category-card--wide{grid-row:span 2;}
 .pawly-promise__grid{grid-template-columns:1fr 1fr;}
 .pawly-promise__grid>div:nth-child(2){border-right:0;}
 .pawly-promise__grid>div:nth-child(-n+2){border-bottom:1px solid color-mix(in srgb,var(--color-text) 9%,transparent);}
 .pawly-moments__inner{grid-template-columns:1fr;gap:40px;}
 .pawly-moments__visual{min-height:500px;}
}
@media(max-width:560px){
 .pawly-category-grid{grid-template-columns:1fr 1fr;grid-template-rows:230px 230px 230px;}
 .pawly-category-card--wide{grid-column:span 2;grid-row:span 1;}
 .pawly-category-card__content{left:17px;bottom:17px;}
 .pawly-category-card__content strong{font-size:1.3rem;}
 .pawly-promise__grid{grid-template-columns:1fr;}
 .pawly-promise__grid>div,.pawly-promise__grid>div:nth-child(2){border-right:0;border-bottom:1px solid color-mix(in srgb,var(--color-text) 9%,transparent)!important;}
 .pawly-promise__grid>div:last-child{border-bottom:0!important;}
 .pawly-moments{padding:72px 0;}
 .pawly-moments__visual{min-height:410px;}
 .pawly-moments__photo--main{height:390px;width:67%;right:13%;}
 .pawly-moments__photo--small{height:190px;width:38%;}
 .pawly-moments__sticker{width:92px;height:92px;font-size:.62rem;}
 .pawly-final-cta{border-radius:28px 28px 0 0;padding:78px 0;}
}


/* =========================================================
   PAWLY V2 — warm, balanced, polished
   ========================================================= */
:root{
  --cream:#F6F0E6;
  --cream-light:#FFFDF8;
  --ink:#171A17;
  --orange:#E9784B;
  --gold:#D8B56A;
}
html{background:var(--cream);}
body,
body.gradient{
  background:var(--cream);
  color:var(--ink);
  background-image:
    radial-gradient(circle at 7% 16%, rgba(216,181,106,.12) 0 90px, transparent 91px),
    radial-gradient(circle at 94% 43%, rgba(233,120,75,.08) 0 120px, transparent 121px),
    radial-gradient(circle at 12% 82%, rgba(216,181,106,.07) 0 150px, transparent 151px);
  background-attachment:fixed;
}
.site-header{
  background:rgba(246,240,230,.86);
  border-bottom:1px solid rgba(23,26,23,.08);
  color:var(--ink);
}
.site-header.is-scrolled{box-shadow:0 12px 32px rgba(23,26,23,.09);}
.site-header__icon-btn:hover{background:rgba(23,26,23,.06);}
.mobile-nav{border-bottom-color:rgba(23,26,23,.08);}
.mobile-nav a{border-bottom-color:rgba(23,26,23,.08);}
.section{padding:82px 0;}
.section__heading{margin-bottom:36px;}
.section__title{color:var(--ink);}
.section__text{color:rgba(23,26,23,.66);}
.section__eyebrow{color:var(--orange);background:rgba(233,120,75,.10);padding:.45em .9em;border-radius:999px;}
.btn--outline{color:var(--ink);border-color:rgba(23,26,23,.18);}
.btn--outline:hover{background:var(--ink);color:var(--cream);border-color:var(--ink);}

/* Hero keeps its cinematic dark treatment while the page around it stays cream. */
.hero-video{min-height:min(760px,88vh);margin:12px 12px 0;border-radius:34px;overflow:hidden;}
.hero-video__overlay{background:linear-gradient(180deg,rgba(15,23,32,.34) 0%,rgba(15,23,32,.62) 60%,rgba(15,23,32,.72) 100%);}
.hero-video__content{padding-top:42px;padding-bottom:42px;}
.hero-video__heading{letter-spacing:-.045em;}
.hero-video__eyebrow{background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.16);}
.btn--hero-main{padding:1em 2.2em;}

/* Categories mobile: two large, full-width cards stacked vertically. */
.pawly-categories{
  margin-top:0!important;
  background:transparent!important;
  border-radius:0!important;
  padding-left:18px!important;
  padding-right:18px!important;
  overflow:visible;
}
.pawly-category-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  grid-auto-rows:auto;
  gap:22px;
}
.pawly-category-card,
.pawly-category-card--wide{
  grid-column:1!important;
  grid-row:auto!important;
  width:100%;
  min-height:0;
  aspect-ratio:1 / 1;
  transform:translate3d(0,0,0) rotateX(var(--my,0deg)) rotateY(var(--mx,0deg));
  transform-style:preserve-3d;
  transition:transform .55s var(--ease),box-shadow .55s var(--ease);
  border-radius:30px;
}
.pawly-category-card__video,
.pawly-category-card img{width:100%;height:100%;object-fit:cover;display:block;}
.pawly-category-card__content{
  left:24px;
  right:24px;
  bottom:auto;
  top:50%;
  transform:translateY(-50%);
  align-items:center;
  text-align:center;
  z-index:2;
}
.pawly-category-card__content small{font-size:.78rem;margin-bottom:10px;}
.pawly-category-card__content strong{font-size:clamp(1.65rem,6vw,2.15rem);font-weight:600;}
.pawly-category-card__content span{margin-top:16px;font-size:.88rem;padding:9px 16px;}
.pawly-category-card:hover{transform:translate3d(0,-5px,0) rotateX(var(--my,0deg)) rotateY(var(--mx,0deg));}
.pawly-category-card:hover .pawly-category-card__video,
.pawly-category-card:hover img{transform:scale(1.04);}
.pawly-category-card__paw{animation:float 4.5s ease-in-out infinite;right:20px;top:18px;}
.pawly-category-card--accent{
  background:
    radial-gradient(circle at 82% 20%,rgba(255,255,255,.22) 0 70px,transparent 71px),
    linear-gradient(135deg,#E9784B 0%,#D8A15E 100%);
}
.pawly-category-card__glow{
  position:absolute;width:190px;height:190px;border-radius:50%;
  right:-70px;bottom:-85px;background:rgba(255,255,255,.13);
  filter:blur(2px);animation:accentPulse 5s ease-in-out infinite;
}
.pawly-category-card__giant-paw{z-index:0;}
.pawly-category-card--accent .pawly-category-card__content{z-index:2;}
.pawly-category-card__orbit{z-index:2;}

@keyframes accentPulse{0%,100%{transform:scale(1);opacity:.65}50%{transform:scale(1.12);opacity:1}}
@keyframes softFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}

/* Never create fake giant gaps when a collection has no products. */
.featured-collection{padding-top:70px;padding-bottom:70px;}
.product-card{background:var(--cream-light);border:1px solid rgba(23,26,23,.07);box-shadow:0 12px 32px rgba(23,26,23,.07);}
.product-card:hover{box-shadow:0 24px 50px rgba(23,26,23,.12);}
.product-card__info{background:var(--cream-light);}
.product-card--placeholder .product-card__media{background:#e9dfd0;}
.product-card--placeholder .product-card__info{background:var(--cream-light);}
.product-card__title a:hover{color:var(--orange);}

/* Promise is a compact bridge, not a giant empty section. */
.pawly-promise{padding:14px 0 28px;}
.pawly-promise__grid{
  background:rgba(255,253,248,.78);
  border:1px solid rgba(23,26,23,.08);
  box-shadow:0 16px 38px rgba(23,26,23,.06);
}
.pawly-promise__grid>div{border-right-color:rgba(23,26,23,.08);}
.pawly-promise__icon{background:rgba(233,120,75,.10);}

/* Image/text section is compact and has a guaranteed visual fallback. */
.image-with-text{
  margin-top:0;
  margin-bottom:0;
  background:rgba(255,253,248,.55);
  border-radius:32px;
  padding:60px 48px;
  box-shadow:0 18px 50px rgba(23,26,23,.05);
}
.image-with-text__media{min-height:420px;box-shadow:0 24px 60px rgba(23,26,23,.14);}
.image-with-text__placeholder{background:linear-gradient(145deg,#e8dcca,#f4eadc);}
.image-with-text__placeholder-fallback{position:absolute;inset:0;display:grid;place-items:center;font-size:6rem;opacity:.2;z-index:0;}
.image-with-text__placeholder img{position:relative;z-index:1;}
.image-with-text__placeholder-overlay{z-index:2;}
.image-with-text__pet-badge,.image-with-text__mini-pet{z-index:3;}
.image-with-text__text{color:rgba(23,26,23,.68);}
.image-with-text__content::after{color:var(--orange);}

/* Moments becomes a contained editorial block rather than a white void. */
.pawly-moments{
  margin:28px 12px;
  padding:82px 0;
  border-radius:34px;
  background:linear-gradient(135deg,rgba(216,181,106,.14),rgba(255,253,248,.72) 55%,rgba(233,120,75,.08));
}
.pawly-moments__copy h2{color:var(--ink);}
.pawly-moments__copy h2 em{color:var(--orange);}
.pawly-moments__copy p{color:rgba(23,26,23,.68);}
.pawly-moments__photo{border-color:rgba(255,253,248,.9);}

/* Features and footer */
.rich-text{padding-top:70px;padding-bottom:70px;}
.feature-card{
  background:var(--cream-light);
  border-color:rgba(23,26,23,.08);
  box-shadow:0 14px 34px rgba(23,26,23,.07);
}
.feature-card:nth-child(2){transform:none;}
.feature-card:nth-child(2):hover{transform:translateY(-6px);}
.feature-card__icon{background:rgba(216,181,106,.18);}
.feature-card p{color:rgba(23,26,23,.62);}
.site-footer{background:#1b1d1a;color:#f6f0e6;margin-top:0;padding-top:64px;}
.site-footer__brand p,.site-footer__col a{color:rgba(246,240,230,.62);}
.site-footer__social a{background:rgba(246,240,230,.08);}
.site-footer__bottom{border-top-color:rgba(246,240,230,.10);}

.pawly-final-cta{
  margin:28px 12px 0;
  border-radius:34px;
  background:#1b1d1a;
  color:#f6f0e6;
}

/* Scroll reveal: clean stagger, no permanent invisible content. */
[data-reveal]{transition-delay:var(--reveal-delay,0ms);}
[data-reveal].is-visible{opacity:1;transform:none;}

/* Mobile: consistent 2-column category rhythm and no orphaned whitespace. */
@media(max-width:699px){
  .page-width{padding-left:18px;padding-right:18px;}
  .hero-video{margin:8px 8px 0;border-radius:26px;height:68vh;min-height:460px;max-height:680px;}
  .section{padding:62px 0;}
  .pawly-categories{padding-left:18px!important;padding-right:18px!important;}
  .pawly-category-grid{grid-template-columns:1fr 1fr;grid-auto-rows:220px;gap:12px;}
  .pawly-category-card__content{left:16px;right:12px;bottom:16px;}
  .pawly-category-card__content strong{font-size:1.22rem;}
  .pawly-category-card__content span{font-size:.72rem;padding:6px 10px;}
  .pawly-category-card__paw{right:13px;top:13px;font-size:1.5rem;}
  .pawly-category-card__giant-paw{font-size:7rem;}
  .featured-collection{padding-top:58px;padding-bottom:58px;}
  .image-with-text{padding:28px 18px 34px;border-radius:26px;}
  .image-with-text__media{min-height:300px;}
  .pawly-moments{margin:20px 8px;padding:64px 0;border-radius:26px;}
  .pawly-final-cta{margin:20px 8px 0;border-radius:26px;}
}
@media(max-width:420px){
  .pawly-category-grid{grid-auto-rows:205px;gap:10px;}
  .pawly-category-card__content strong{font-size:1.08rem;}
  .pawly-category-card__content small{font-size:.58rem;}
}
@media(prefers-reduced-motion:reduce){
  .pawly-category-card{transform:none!important;}
}


/* ===== Pawly — Day section / final layout corrections ===== */
.pawly-category-grid{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  grid-template-rows:repeat(2,minmax(0,300px)) !important;
  grid-auto-rows:auto !important;
}
.pawly-category-card{min-height:0 !important;height:100%;}

.pawly-day{
  position:relative;
  margin:0 12px 28px;
  padding:72px 0 62px;
  border-radius:34px;
  overflow:hidden;
  background:
    radial-gradient(circle at 8% 8%, rgba(216,181,106,.18) 0 110px, transparent 111px),
    radial-gradient(circle at 94% 52%, rgba(233,120,75,.12) 0 150px, transparent 151px),
    linear-gradient(135deg,#f3eadc 0%,#fffaf1 52%,#f7eee3 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}
.pawly-day__inner{position:relative;z-index:1;}
.pawly-day__intro{text-align:center;max-width:720px;margin:0 auto 38px;}
.pawly-day__intro h2{font-size:clamp(2.2rem,5vw,4rem);letter-spacing:-.045em;margin:8px 0 14px;}
.pawly-day__intro h2 em{font-style:normal;color:var(--orange);}
.pawly-day__intro p{max-width:590px;margin:0 auto;color:rgba(23,26,23,.65);font-size:1rem;}
.pawly-day__timeline{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;}
.pawly-day__timeline:before{content:'';position:absolute;left:8%;right:8%;top:31px;height:2px;background:rgba(23,26,23,.10);}
.pawly-day__step{position:relative;z-index:1;}
.pawly-day__time{display:flex;align-items:center;justify-content:center;gap:6px;margin-bottom:12px;font-size:1.05rem;font-weight:800;}
.pawly-day__time span{font-size:.72rem;letter-spacing:.08em;color:rgba(23,26,23,.52);}
.pawly-day__card{height:100%;min-height:184px;padding:18px 15px;border:1px solid rgba(23,26,23,.08);border-radius:22px;background:rgba(255,253,248,.72);box-shadow:0 12px 28px rgba(23,26,23,.06);transition:transform .45s var(--ease),box-shadow .45s var(--ease),background .45s var(--ease);backdrop-filter:blur(8px);}
.pawly-day__card:hover{transform:translateY(-7px);background:rgba(255,253,248,.95);box-shadow:0 22px 40px rgba(23,26,23,.10);}
.pawly-day__emoji{display:grid;place-items:center;width:48px;height:48px;margin-bottom:13px;border-radius:16px;background:rgba(233,120,75,.10);font-size:1.45rem;transition:transform .45s var(--ease);}
.pawly-day__card:hover .pawly-day__emoji{transform:rotate(-7deg) scale(1.08);}
.pawly-day__card small{display:block;text-transform:uppercase;letter-spacing:.10em;font-weight:800;font-size:.62rem;color:var(--orange);margin-bottom:5px;}
.pawly-day__card h3{font-size:1.05rem;margin:0 0 6px;letter-spacing:-.02em;}
.pawly-day__card p{font-size:.76rem;line-height:1.45;color:rgba(23,26,23,.60);margin:0;}
.pawly-day__footer{display:flex;align-items:center;justify-content:center;gap:22px;margin-top:34px;flex-wrap:wrap;font-weight:700;color:rgba(23,26,23,.72);}
.pawly-day__footer .btn{font-size:.82rem;padding:.72em 1.25em;}
.pawly-day__decor{position:absolute;pointer-events:none;opacity:.12;}
.pawly-day__decor--one{right:5%;top:22%;font-size:3rem;animation:softFloat 4.5s ease-in-out infinite;}
.pawly-day__decor--two{left:2%;bottom:10%;font-size:5rem;transform:rotate(-18deg);opacity:.055;animation:float 7s ease-in-out infinite;}

@media(max-width:899px){
  .pawly-day{padding:58px 0 50px;margin:0 8px 20px;border-radius:28px;}
  .pawly-day__timeline{grid-template-columns:1fr;gap:10px;padding-left:0;}
  .pawly-day__timeline:before{left:27px;right:auto;top:22px;bottom:22px;width:2px;height:auto;}
  .pawly-day__step{display:grid;grid-template-columns:55px 1fr;gap:10px;align-items:start;}
  .pawly-day__time{justify-content:flex-start;flex-direction:column;gap:2px;font-size:1.15rem;margin:0;padding-top:8px;}
  .pawly-day__time span{font-size:.58rem;}
  .pawly-day__card{min-height:0;padding:15px;display:flex;align-items:center;gap:14px;}
  .pawly-day__emoji{flex:0 0 46px;margin:0;}
  .pawly-day__footer{margin-top:26px;text-align:center;}
}
@media(max-width:699px){
  .pawly-category-grid{grid-template-rows:repeat(2,220px) !important;gap:12px;}
  .pawly-day__intro{margin-bottom:28px;padding:0 4px;}
  .pawly-day__intro h2{font-size:2.25rem;}
}
@media(max-width:420px){
  .pawly-category-grid{grid-template-rows:repeat(2,205px) !important;gap:10px;}
  .pawly-day__card h3{font-size:.98rem;}
  .pawly-day__card p{font-size:.72rem;}
}

/* ===== PAWLY V4 — viewport lock / no horizontal drift =====
   Keeps every section inside the real viewport on mobile and desktop.
   Decorative transforms/animations may never change the page width. */
html, body { width:100%; max-width:100%; overflow-x:clip; }
body { overflow-x:hidden; }
#MainContent, .content-for-layout, .shopify-section { width:100%; max-width:100%; min-width:0; }
.shopify-section { overflow:visible; }
.page-width { width:100%; max-width:var(--page-width); min-width:0; }

/* Full-bleed visual sections: equal breathing room on both sides. */
.hero-video,
.pawly-day,
.pawly-final-cta,
.pawly-moments { box-sizing:border-box; max-width:calc(100% - 16px); }
.hero-video { width:calc(100% - 16px); margin-left:8px; margin-right:8px; }
.pawly-day,
.pawly-moments,
.pawly-final-cta { width:calc(100% - 16px); margin-left:8px; margin-right:8px; }

/* Grid children are allowed to shrink instead of creating an overflow track. */
.pawly-category-grid,
.pawly-day__timeline,
.product-grid,
.pawly-promise__grid,
.image-with-text,
.rich-text__features { min-width:0; }
.pawly-category-card,
.pawly-day__step,
.pawly-day__card,
.product-card { min-width:0; }

/* Text can never force a mobile column wider than the viewport. */
.pawly-category-card__content,
.pawly-day__intro,
.pawly-day__card,
.hero-video__content { max-width:100%; }

@media (max-width:699px){
  .hero-video { width:calc(100% - 16px); max-width:calc(100% - 16px); height:68vh; min-height:460px; max-height:680px; margin-left:8px; margin-right:8px; }
  .pawly-day,
  .pawly-moments,
  .pawly-final-cta { width:calc(100% - 16px); max-width:calc(100% - 16px); margin-left:8px; margin-right:8px; }
  .pawly-category-grid { width:100%; max-width:100%; }
}


/* ===== PAWLY V5 — polished motion layer ===== */
.pawly-day{--day-progress:0;isolation:isolate;}
.pawly-day::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.34;background:radial-gradient(circle at 50% 12%,rgba(255,255,255,.9),transparent 32%),radial-gradient(circle at 50% 100%,rgba(233,120,75,.08),transparent 38%);z-index:0;}
.pawly-day__timeline:after{content:"";position:absolute;left:8%;top:30px;width:calc(84% * var(--day-progress));height:2px;transform-origin:left center;background:linear-gradient(90deg,var(--color-primary),rgba(233,120,75,.35));border-radius:99px;z-index:1;transition:width .25s linear;}
.pawly-day__step{transition:transform .55s var(--ease);}
.pawly-day__step.is-active{transform:translateY(-4px);}
.pawly-day__step.is-active .pawly-day__time-icon{transform:scale(1.14) rotate(-5deg);}
.pawly-day__time-icon{display:inline-grid;place-items:center;min-width:1.5em;transition:transform .5s var(--ease);}
.pawly-day__card{transform:perspective(900px) rotateX(var(--card-rx,0deg)) rotateY(var(--card-ry,0deg)) translateZ(0);}
.pawly-day__card::before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(120deg,rgba(255,255,255,.34),transparent 42%);opacity:0;transition:opacity .45s var(--ease);pointer-events:none;}
.pawly-day__card:hover::before,.pawly-day__step.is-active .pawly-day__card::before{opacity:1;}
.pawly-day__card{position:relative;overflow:hidden;}
.pawly-day__footer-copy strong{color:var(--color-text);}
.pawly-day__paw-trail{position:absolute;right:9%;bottom:15%;display:flex;gap:18px;opacity:.12;transform:rotate(-18deg);pointer-events:none;z-index:0;}
.pawly-day__paw-trail i{font-style:normal;font-size:1.6rem;animation:pawStep 3.8s ease-in-out infinite;}
.pawly-day__paw-trail i:nth-child(2){margin-top:-13px;animation-delay:.35s;}
.pawly-day__paw-trail i:nth-child(3){margin-top:-25px;animation-delay:.7s;}
@keyframes pawStep{0%,100%{transform:translateY(0) rotate(0);opacity:.45}50%{transform:translateY(-7px) rotate(5deg);opacity:.9}}
.pawly-category-card{will-change:transform;}
.pawly-category-card::after{content:"";position:absolute;inset:-20%;background:radial-gradient(circle at var(--shine-x,50%) var(--shine-y,20%),rgba(255,255,255,.18),transparent 18%);opacity:0;transition:opacity .5s var(--ease);pointer-events:none;z-index:1;}
.pawly-category-card:hover::after{opacity:1;}

@media(max-width:899px){
  .pawly-day__timeline:after{left:27px;top:22px;width:2px;height:calc(100% * var(--day-progress));max-height:calc(100% - 44px);transform-origin:top center;}
  .pawly-day__paw-trail{right:4%;bottom:7%;}
}
@media(prefers-reduced-motion:reduce){
  .pawly-day::after,.pawly-day__paw-trail,.pawly-day__timeline:after{animation:none!important;transition:none!important;}
  .pawly-day__card{transform:none!important;}
}


/* ===== PELUDITOS CLUB — HERO FINAL v4 =====
   Video contenido dentro del hero + logo centrado + CTA premium. */
.hero-video{
  position:relative;
  height:clamp(560px,72vh,780px)!important;
  min-height:560px!important;
  max-height:780px!important;
  width:calc(100% - 24px)!important;
  max-width:none!important;
  margin:12px 12px 0!important;
  border-radius:32px!important;
  overflow:hidden!important;
}
.hero-video__bg,
.hero-video__bg video,
.hero-video__bg img{width:100%;height:100%;}
.hero-video__bg video,
.hero-video__bg img{object-fit:cover;object-position:center;}

/* Logo: centered geometrically in the viewport, independent of the right-side icons. */
.site-header__inner{position:relative;min-height:96px;}
.site-header__logo{
  position:absolute!important;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:clamp(190px,22vw,285px)!important;
  max-width:42vw;
  margin:0!important;
  flex:none!important;
  display:flex;
  align-items:center;
  justify-content:center;
}
.site-header__logo-image{
  display:block;
  width:100%!important;
  max-width:none!important;
  max-height:78px!important;
  height:auto!important;
  object-fit:contain!important;
  object-position:50% 50%!important;
  margin:0 auto!important;
}
.site-header__icons{margin-left:auto;position:relative;z-index:3;}
.site-header__menu-toggle{position:relative;z-index:3;}

/* CTA: solo texto, tipografía propia y una animación continua pero sutil. */
.btn--hero-main{
  position:relative!important;
  isolation:isolate;
  overflow:hidden!important;
  min-width:218px;
  padding:1.08em 2.55em!important;
  border:0!important;
  border-radius:999px!important;
  color:#fff!important;
  font-family:'Baloo 2', var(--font-heading), sans-serif!important;
  font-size:1.16rem!important;
  font-weight:700!important;
  line-height:1!important;
  letter-spacing:.01em;
  background:linear-gradient(110deg,#E9784B 0%,#F3A15F 45%,#E9784B 100%)!important;
  background-size:220% 100%;
  opacity:.93;
  backdrop-filter:blur(3px);
  box-shadow:0 12px 30px rgba(233,120,75,.34),0 0 0 1px rgba(255,255,255,.16) inset;
  transform:translateZ(0);
  animation:pcCtaBreath 3.8s ease-in-out infinite,pcCtaGradient 6s ease-in-out infinite;
}
.btn--hero-main .btn__label{position:relative;z-index:3;display:inline-block;}
.btn--hero-main::before{
  content:'';
  position:absolute;
  top:-70%;left:-45%;
  width:32%;height:240%;
  z-index:1;
  transform:rotate(22deg) translateX(-170%);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.72),transparent);
  filter:blur(2px);
  opacity:0;
  animation:pcCtaShine 4.8s cubic-bezier(.4,0,.2,1) infinite;
  pointer-events:none;
}
.btn--hero-main::after{
  content:'';
  position:absolute;
  inset:-6px;
  z-index:-1;
  border-radius:inherit;
  border:1px solid rgba(233,120,75,.55);
  box-shadow:0 0 0 0 rgba(233,120,75,0);
  opacity:.65;
  animation:pcCtaHalo 3.8s ease-in-out infinite;
  pointer-events:none;
}
.btn--hero-main:hover{
  transform:translateY(-3px) scale(1.045)!important;
  box-shadow:0 18px 40px rgba(233,120,75,.46),0 0 26px rgba(233,120,75,.25),0 0 0 1px rgba(255,255,255,.2) inset;
}
@keyframes pcCtaBreath{
  0%,100%{transform:translateY(0) scale(1);box-shadow:0 12px 30px rgba(233,120,75,.34),0 0 0 1px rgba(255,255,255,.16) inset;}
  48%{transform:translateY(-2px) scale(1.025);box-shadow:0 18px 38px rgba(233,120,75,.48),0 0 20px rgba(233,120,75,.20),0 0 0 1px rgba(255,255,255,.20) inset;}
  56%{transform:translateY(0) scale(1.01);}
}
@keyframes pcCtaGradient{0%,100%{background-position:0% 50%;}50%{background-position:100% 50%;}}
@keyframes pcCtaShine{
  0%,34%{transform:rotate(22deg) translateX(-170%);opacity:0;}
  43%{opacity:.95;}
  55%,100%{transform:rotate(22deg) translateX(520%);opacity:0;}
}
@keyframes pcCtaHalo{
  0%,100%{opacity:.25;transform:scale(.985);box-shadow:0 0 0 0 rgba(233,120,75,0);}
  48%{opacity:.8;transform:scale(1.035);box-shadow:0 0 0 7px rgba(233,120,75,.07);}
  58%{opacity:.45;transform:scale(1.01);}
}

/* El CTA queda más abajo dentro del hero, sin mover todo el contenido. */
.hero-video__actions{margin-top:58px!important;}

@media(max-width:699px){
  .site-header__inner{min-height:96px;}
  .site-header__logo{width:clamp(190px,52vw,235px)!important;max-width:52vw;}
  .site-header__logo-image{max-height:72px!important;}
  .hero-video{
    height:clamp(560px,68vh,720px)!important;
    min-height:560px!important;
    max-height:720px!important;
    width:calc(100% - 16px)!important;
    margin:8px 8px 0!important;
    border-radius:26px!important;
  }
  .hero-video__content{padding-top:34px;padding-bottom:34px;}
  .hero-video__actions{margin-top:72px!important;}
  .btn--hero-main{min-width:210px;font-size:1.08rem!important;}
}

@media(prefers-reduced-motion:reduce){
  .btn--hero-main,.btn--hero-main::before,.btn--hero-main::after{animation:none!important;}
}

/* La sección se reserva para el futuro video. */
.pawly-day{display:none!important;}

/* ===== PELUDITOS CLUB — HERO v5 =====
   Sin huellas flotando sobre el video. Las huellas viven dentro del CTA. */
.hero-video__paws{display:none!important;}

.btn--hero-main{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  gap:.45em;
  min-width:240px;
  padding:1.08em 3.35em!important;
  overflow:hidden!important;
}
.btn--hero-main .btn__label{z-index:4;}
.btn--hero-main .btn__paw{
  position:absolute;
  top:50%;
  width:22px;
  height:22px;
  display:block;
  color:rgba(255,255,255,.92);
  z-index:3;
  pointer-events:none;
  filter:drop-shadow(0 2px 5px rgba(0,0,0,.12));
}
.btn--hero-main .btn__paw svg{width:100%;height:100%;display:block;}
.btn--hero-main .btn__paw--left{left:24px;transform:translateY(-50%) rotate(-15deg);animation:pcPawLeft 3.6s ease-in-out infinite;}
.btn--hero-main .btn__paw--right{right:24px;transform:translateY(-50%) rotate(15deg);animation:pcPawRight 3.6s ease-in-out .7s infinite;}
@keyframes pcPawLeft{
  0%,100%{opacity:0;transform:translate(-5px,-50%) rotate(-15deg) scale(.72);}
  16%{opacity:0;}
  30%{opacity:.9;transform:translate(0,-50%) rotate(-15deg) scale(1);}
  48%{opacity:.28;transform:translate(5px,-56%) rotate(-9deg) scale(.88);}
  62%{opacity:0;transform:translate(10px,-61%) rotate(-3deg) scale(.72);}
}
@keyframes pcPawRight{
  0%,100%{opacity:0;transform:translate(5px,-50%) rotate(15deg) scale(.72);}
  18%{opacity:0;}
  34%{opacity:.88;transform:translate(0,-50%) rotate(15deg) scale(1);}
  52%{opacity:.28;transform:translate(-5px,-56%) rotate(9deg) scale(.88);}
  66%{opacity:0;transform:translate(-10px,-61%) rotate(3deg) scale(.72);}
}

/* Logo nuevo: imagen recortada, transparente y geométricamente centrada. */
.site-header__logo{
  width:clamp(220px,24vw,310px)!important;
  max-width:58vw!important;
}
.site-header__logo-image{
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
}

@media(max-width:699px){
  .site-header__logo{width:clamp(215px,62vw,255px)!important;max-width:62vw!important;}
  .site-header__logo-image{max-height:none!important;}
  .btn--hero-main{min-width:235px;padding-left:3.15em!important;padding-right:3.15em!important;}
  .btn--hero-main .btn__paw{width:20px;height:20px;}
  .btn--hero-main .btn__paw--left{left:20px;}
  .btn--hero-main .btn__paw--right{right:20px;}
}
@media(prefers-reduced-motion:reduce){
  .btn--hero-main .btn__paw{animation:none!important;opacity:.72;}
}

/* ===== Ajustes finales solicitados ===== */
/* Logo más compacto y centrado de forma geométrica sin invadir menú ni íconos. */
.site-header__inner{min-height:78px!important;padding-top:10px!important;padding-bottom:10px!important;}
.site-header__logo{width:clamp(165px,19vw,220px)!important;max-width:42vw!important;}
.site-header__logo-image{max-height:58px!important;}

/* Huellas ambientales muy sutiles sobre el video. */
.hero-video__paws{display:block!important;}
.hero-video__paws .paw{opacity:.035!important;animation-duration:16s!important;}
.hero-video__paws .paw--5,.hero-video__paws .paw--6{opacity:.022!important;}

/* CTA ligeramente traslúcido, con huellas más frecuentes y botón un poco más abajo. */
.btn--hero-main{opacity:.86!important;background:linear-gradient(110deg,rgba(233,120,75,.84) 0%,rgba(243,161,95,.82) 45%,rgba(233,120,75,.84) 100%)!important;backdrop-filter:blur(5px)!important;}
.btn--hero-main .btn__paw--left{animation-duration:2.35s!important;}
.btn--hero-main .btn__paw--right{animation-duration:2.35s!important;animation-delay:.35s!important;}
.hero-video__actions{margin-top:66px!important;}

@media(max-width:699px){
  .site-header__inner{min-height:74px!important;grid-template-columns:42px minmax(0,1fr) 126px!important;gap:6px!important;padding-left:16px!important;padding-right:16px!important;}
  .site-header__logo{width:min(170px,44vw)!important;max-width:44vw!important;}
  .site-header__logo-image{max-height:54px!important;}
  .site-header__icons{gap:0!important;}
  .site-header__icon-btn{width:34px;height:34px;}
  .hero-video__actions{margin-top:82px!important;}
}

/* ===== Corrección final: header como el diseño original + CTA más abajo ===== */
/* El encabezado vuelve a una distribución horizontal: logo a la izquierda e íconos a la derecha. */
.site-header__inner{display:flex!important;align-items:center!important;gap:18px!important;min-height:78px!important;padding:12px 24px!important;}
.site-header__menu-toggle{display:none!important;}
.site-header__logo{display:flex!important;align-items:center!important;justify-content:flex-start!important;width:clamp(165px,20vw,235px)!important;max-width:none!important;flex:0 1 235px!important;margin-right:auto!important;justify-self:auto!important;}
.site-header__logo-image{width:100%!important;max-height:68px!important;object-position:left center!important;}
.site-header__icons{margin-left:auto!important;justify-self:auto!important;}

/* Botón del hero más abajo sin alterar el resto del contenido. */
.hero-video__actions{margin-top:28px!important;transform:translateY(38px)!important;}

@media(max-width:699px){
  .site-header__inner{display:flex!important;gap:8px!important;padding:10px 16px!important;min-height:74px!important;}
  .site-header__logo{width:min(58vw,230px)!important;max-width:none!important;flex:0 1 auto!important;margin-right:auto!important;}
  .site-header__logo-image{max-height:62px!important;object-position:left center!important;}
  .site-header__icons{margin-left:auto!important;gap:0!important;flex-shrink:0!important;}
  .site-header__icon-btn{width:34px!important;height:34px!important;}
  .hero-video__actions{margin-top:28px!important;transform:translateY(78px)!important;}
}

/* ===== Peluditos Club V9 — header mobile corrected ===== */
.site-header{
  background:
    radial-gradient(circle at 8% 50%, rgba(233,120,75,.10), transparent 30%),
    linear-gradient(180deg, #fffaf2 0%, #f7eee2 100%) !important;
  border-bottom: 1px solid rgba(233,120,75,.16) !important;
  box-shadow: 0 4px 18px rgba(23,26,23,.06) !important;
}
.site-header__inner{
  position:relative !important;
}

@media(max-width:699px){
  .site-header__inner{
    min-height:104px !important;
    height:104px !important;
    padding:6px 12px !important;
    display:flex !important;
    align-items:center !important;
  }
  /* El logo ocupa el espacio vacío de la izquierda, sin invadir el hero. */
  .site-header__logo{
    position:absolute !important;
    left:12px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    width:180px !important;
    max-width:none !important;
    height:auto !important;
    margin:0 !important;
    z-index:2 !important;
  }
  .site-header__logo-image{
    width:100% !important;
    height:auto !important;
    max-height:none !important;
    object-fit:contain !important;
    object-position:center !important;
    filter:drop-shadow(0 2px 3px rgba(23,26,23,.06));
  }
  .site-header__icons{
    position:absolute !important;
    right:10px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    margin:0 !important;
    z-index:3 !important;
    display:flex !important;
    gap:0 !important;
    background:rgba(255,255,255,.22);
    border-radius:999px;
    padding:2px !important;
    backdrop-filter:blur(5px);
  }
  .site-header__icon-btn{
    width:38px !important;
    height:38px !important;
  }
}

@media(max-width:370px){
  .site-header__logo{width:165px !important;left:10px !important;}
  .site-header__icons{right:7px !important;}
  .site-header__icon-btn{width:35px !important;height:35px !important;}
}


/* ===== Peluditos Club — detalles sutiles y animación del header ===== */
.site-header{
  overflow:hidden !important;
  background:
    radial-gradient(circle at 12% 45%, rgba(242,133,82,.13), transparent 27%),
    radial-gradient(circle at 88% 55%, rgba(245,190,110,.10), transparent 24%),
    linear-gradient(115deg,#fffaf3 0%,#f8efe3 48%,#fffaf3 100%) !important;
  background-size:140% 140% !important;
  animation:peluditosHeaderBreath 12s ease-in-out infinite alternate !important;
  position:relative !important;
}
.site-header::before{
  content:"" !important;
  position:absolute !important;
  left:-20% !important;
  top:0 !important;
  width:32% !important;
  height:100% !important;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.48),transparent) !important;
  transform:skewX(-18deg) translateX(-120%) !important;
  pointer-events:none !important;
  animation:peluditosHeaderShine 8s ease-in-out infinite !important;
  z-index:4 !important;
}
.site-header::after{
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  bottom:0 !important;
  height:2px !important;
  background:linear-gradient(90deg,transparent 0%,rgba(239,124,74,.08) 18%,rgba(239,124,74,.45) 50%,rgba(239,124,74,.08) 82%,transparent 100%) !important;
  transform:scaleX(.65) !important;
  transform-origin:center !important;
  animation:peluditosHeaderLine 5s ease-in-out infinite !important;
  pointer-events:none !important;
  z-index:5 !important;
}
.site-header__logo-image{
  transition:transform .35s ease, filter .35s ease !important;
}
.site-header__icons{
  transition:box-shadow .35s ease, background .35s ease !important;
}
.site-header__icon-btn{
  transition:transform .22s ease, background .22s ease !important;
}
.site-header__icon-btn:hover{
  transform:translateY(-2px) scale(1.04) !important;
  background:rgba(239,124,74,.08) !important;
}
@keyframes peluditosHeaderBreath{
  from{background-position:0% 50%;}
  to{background-position:100% 50%;}
}
@keyframes peluditosHeaderShine{
  0%,55%{transform:skewX(-18deg) translateX(-150%);opacity:0;}
  65%{opacity:1;}
  78%,100%{transform:skewX(-18deg) translateX(520%);opacity:0;}
}
@keyframes peluditosHeaderLine{
  0%,100%{transform:scaleX(.55);opacity:.45;}
  50%{transform:scaleX(1);opacity:1;}
}
@media(max-width:699px){
  .site-header__logo-image{
    filter:drop-shadow(0 2px 3px rgba(23,26,23,.08)) !important;
  }
  .site-header__icons{
    box-shadow:0 3px 12px rgba(23,26,23,.07) !important;
  }
}
@media(prefers-reduced-motion:reduce){
  .site-header,.site-header::before,.site-header::after{animation:none !important;}
  .site-header__icon-btn,.site-header__logo-image{transition:none !important;}
}

/* ===== Peluditos Club — requested final polish ===== */
.image-with-text{
  align-items:center;
  padding-top:42px;
  padding-bottom:24px;
  min-height:0;
}
.image-with-text__media{
  width:100%;
  min-width:0;
  overflow:hidden;
}
.image-with-text__media img,
.image-with-text__placeholder img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:50% 42%;
}
.image-with-text__content{
  min-width:0;
  padding:0;
}
.image-with-text__content::after{display:none;}
.image-with-text__catalog-btn{
  display:inline-flex;
  position:relative;
  z-index:4;
  margin-top:4px;
  padding:1em 1.65em;
  background:var(--orange)!important;
  color:#fff!important;
  border:2px solid var(--orange)!important;
  box-shadow:0 12px 28px rgba(233,120,75,.32), 0 0 0 5px rgba(233,120,75,.08);
  font-weight:800;
  text-shadow:0 1px 1px rgba(0,0,0,.08);
}
.image-with-text__catalog-btn:hover{
  background:#d96338!important;
  border-color:#d96338!important;
  box-shadow:0 16px 34px rgba(233,120,75,.40), 0 0 0 7px rgba(233,120,75,.10);
}

/* Final CTA: lively pet-toy field. Items pop in/out on a 0.7s stagger. */
.pawly-final-cta{isolation:isolate;}
.pawly-final-cta__inner{z-index:5;}
.pawly-final-cta__decor{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  overflow:hidden;
}
.pawly-final-cta__item{
  position:absolute;
  display:grid;
  place-items:center;
  width:clamp(38px,5vw,74px);
  height:clamp(38px,5vw,74px);
  border-radius:50%;
  background:rgba(255,255,255,.075);
  border:1px solid rgba(255,255,255,.10);
  font-size:clamp(1.5rem,3vw,3rem);
  opacity:0;
  filter:drop-shadow(0 10px 18px rgba(0,0,0,.22));
  animation:peluditosPop .7s steps(2,end) infinite alternate;
}
.pawly-final-cta__item--1{left:5%;top:14%;animation-delay:0s;transform:rotate(-18deg)}
.pawly-final-cta__item--2{left:19%;top:68%;animation-delay:.7s;transform:rotate(14deg)}
.pawly-final-cta__item--3{left:33%;top:18%;animation-delay:1.4s;transform:rotate(-12deg)}
.pawly-final-cta__item--4{right:25%;top:12%;animation-delay:2.1s;transform:rotate(10deg)}
.pawly-final-cta__item--5{right:8%;top:55%;animation-delay:2.8s;transform:rotate(-20deg)}
.pawly-final-cta__item--6{left:8%;bottom:8%;animation-delay:3.5s;transform:rotate(18deg)}
.pawly-final-cta__item--7{right:35%;bottom:12%;animation-delay:4.2s;transform:rotate(-10deg)}
.pawly-final-cta__item--8{right:4%;top:18%;animation-delay:4.9s;transform:rotate(15deg)}
.pawly-final-cta__item--9{left:48%;top:6%;animation-delay:5.6s;transform:rotate(-8deg)}
.pawly-final-cta__item--10{right:17%;bottom:8%;animation-delay:6.3s;transform:rotate(12deg)}
.pawly-final-cta__item--11{left:27%;bottom:7%;animation-delay:7s;transform:rotate(-16deg)}
.pawly-final-cta__item--12{right:45%;bottom:5%;animation-delay:7.7s;transform:rotate(8deg)}
@keyframes peluditosPop{
  0%{opacity:0;transform:translateY(12px) scale(.35) rotate(-20deg)}
  45%{opacity:.12;transform:translateY(-3px) scale(1.08) rotate(5deg)}
  100%{opacity:.045;transform:translateY(0) scale(.92) rotate(0deg)}
}
.pawly-final-cta__paws{display:none;}

/* Newsletter readability: the screenshot showed white text disappearing into the cream background. */
.newsletter{
  background:linear-gradient(135deg,#efe4d3 0%,#f8efe3 55%,#f2e2d2 100%);
  color:var(--ink);
  padding:62px 0 54px;
}
.newsletter__heading{color:var(--ink);font-weight:800;text-shadow:none;}
.newsletter__text{color:rgba(23,26,23,.72);opacity:1;}
.newsletter__paws{color:var(--orange);opacity:.11;}
.newsletter__form{box-shadow:0 14px 30px rgba(23,26,23,.10);}

/* Footer text: stronger contrast against the dark footer. */
.site-footer{background:#171a17;color:#fffaf1;}
.site-footer__logo{color:#fffaf1;}
.site-footer__brand p,
.site-footer__col a{color:rgba(255,250,241,.82);}
.site-footer__col h4{color:#fffaf1;font-weight:800;}
.site-footer__col a:hover{color:#fff;}
.site-footer__bottom{color:rgba(255,250,241,.78);opacity:1;}

@media(max-width:699px){
  .image-with-text{padding:26px 18px 24px;gap:22px;}
  .image-with-text__media{min-height:280px;aspect-ratio:4/3;}
  .image-with-text__media img,
  .image-with-text__placeholder img{object-position:50% 38%;}
  .image-with-text__catalog-btn{margin-top:0;padding:.95em 1.45em;font-size:.9rem;}
  .newsletter{padding:54px 0 46px;}
  .pawly-final-cta__item{background:rgba(255,255,255,.06);}
}
@media(prefers-reduced-motion:reduce){
  .pawly-final-cta__item{animation:none;opacity:.06;}
}

/* ===== Peluditos Club — WhatsApp flotante ===== */
.peluditos-whatsapp{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:9999;
  width:58px;
  height:58px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#25D366;
  color:#fff;
  text-decoration:none;
  box-shadow:0 12px 30px rgba(0,0,0,.22),0 0 0 6px rgba(37,211,102,.12);
  transform:translateY(18px) scale(.72);
  opacity:0;
  animation:peluditosWhatsAppIn 1s cubic-bezier(.2,.85,.25,1) .35s forwards, peluditosWhatsAppFloat 3.2s ease-in-out 1.6s infinite;
  transition:transform .25s ease, box-shadow .25s ease;
}
.peluditos-whatsapp svg{width:31px;height:31px;display:block;}
.peluditos-whatsapp:hover{transform:translateY(-4px) scale(1.06);box-shadow:0 18px 36px rgba(0,0,0,.26),0 0 0 8px rgba(37,211,102,.14);}
.peluditos-whatsapp__pulse{position:absolute;inset:-7px;border:2px solid #25D366;border-radius:50%;opacity:0;animation:peluditosWhatsAppPulse 2.2s ease-out 1.5s infinite;pointer-events:none;}
.peluditos-whatsapp__label{position:absolute;right:70px;white-space:nowrap;background:#171a17;color:#fffaf1;padding:8px 12px;border-radius:999px;font-size:.78rem;font-weight:800;opacity:0;transform:translateX(7px);transition:opacity .2s ease,transform .2s ease;pointer-events:none;box-shadow:0 8px 20px rgba(0,0,0,.18);}
.peluditos-whatsapp:hover .peluditos-whatsapp__label{opacity:1;transform:translateX(0);}
@keyframes peluditosWhatsAppIn{to{opacity:1;transform:translateY(0) scale(1);}}
@keyframes peluditosWhatsAppFloat{0%,100%{margin-bottom:0}50%{margin-bottom:4px}}
@keyframes peluditosWhatsAppPulse{0%{opacity:.45;transform:scale(.9)}75%,100%{opacity:0;transform:scale(1.45)}}

/* Footer social icons */
.site-footer__social a svg{width:20px;height:20px;display:block;}
.site-footer__social a{color:#fffaf1;}
.site-footer__social a:hover{color:#fff;}
@media(max-width:699px){
  .peluditos-whatsapp{right:16px;bottom:16px;width:54px;height:54px;}
  .peluditos-whatsapp svg{width:28px;height:28px;}
  .peluditos-whatsapp__label{display:none;}
}
@media(prefers-reduced-motion:reduce){
  .peluditos-whatsapp{animation:peluditosWhatsAppIn 1s ease .2s forwards;}
  .peluditos-whatsapp__pulse{animation:none;}
}

/* La manada elige: 2 cuadrados grandes, centrados y apilados */
.pawly-category-grid{
  grid-template-columns:minmax(0,760px)!important;
  grid-template-rows:none!important;
  justify-content:center!important;
  gap:28px!important;
  width:100%;
  margin:0 auto;
}
.pawly-category-card{
  grid-column:1!important;
  aspect-ratio:1/1;
  width:100%;
  min-height:0!important;
}
.pawly-category-card__video{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;}
.pawly-category-card__content{
  top:50%;
  bottom:auto;
  left:24px;
  right:24px;
  transform:translateY(-50%);
  align-items:center;
  text-align:center;
}
.pawly-category-card__content strong{font-size:clamp(1.8rem,4vw,2.5rem);}
.pawly-category-card__content span{font-size:.95rem;padding:10px 17px;}
@media(max-width:560px){
  .pawly-categories{padding-left:12px!important;padding-right:12px!important;}
  .pawly-category-grid{grid-template-columns:1fr!important;gap:22px!important;}
  .pawly-category-card{width:100%;aspect-ratio:1/1;}
  .pawly-category-card__content{left:20px;right:20px;}
  .pawly-category-card__content small{font-size:.78rem;margin-bottom:9px;}
  .pawly-category-card__content strong{font-size:clamp(1.9rem,7vw,2.45rem);}
  .pawly-category-card__content span{font-size:.9rem;padding:9px 16px;}
}

/* La manada elige: dos videos grandes, centrados y apilados. */
.pawly-category-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  grid-template-rows:auto auto;
  gap:28px;
  width:min(100%, 980px);
  margin-left:auto;
  margin-right:auto;
}
.pawly-category-card{
  width:100%;
  aspect-ratio:16 / 10;
  min-height:0;
}
.pawly-category-card__video{width:100%;height:100%;object-fit:cover;display:block;}
@media (max-width: 749px){
  .pawly-category-grid{width:100%;gap:22px;}
  .pawly-category-card{aspect-ratio:1 / 1;}
}


/* Safer first mobile paint for Instagram/Facebook WebView. Desktop unchanged. */
@media (max-width: 749px){
  html:not(.peluditos-page-ready) .featured-collection,
  html:not(.peluditos-page-ready) .image-with-text,
  html:not(.peluditos-page-ready) .pawly-promise,
  html:not(.peluditos-page-ready) .rich-text,
  html:not(.peluditos-page-ready) .pawly-final-cta{
    content-visibility: hidden;
    contain: layout paint style;
    contain-intrinsic-size: 1px 500px;
  }
  .featured-collection, .image-with-text, .pawly-promise,
  .rich-text, .pawly-final-cta{
    content-visibility: auto;
    contain-intrinsic-size: 1px 500px;
  }
}

/* Instagram/Facebook WebView: scroll-stability pass. Desktop unchanged. */
@media (max-width: 749px){
  /* Keep off-screen sections cheap to paint while scrolling. */
  #MainContent > section,
  #MainContent > div.shopify-section{
    content-visibility:auto;
    contain-intrinsic-size: 1px 650px;
  }

  /* Avoid creating extra compositor layers during fast swipes. */
  .product-card,
  .feature-card,
  .pawly-category-card,
  .image-with-text__media,
  .pawly-promise__grid,
  .newsletter,
  .site-footer{
    will-change:auto !important;
  }

  /* Mobile has no hover interaction, so don't animate hover transforms. */
  .product-card:hover,
  .product-card:hover .product-card__img,
  .feature-card:hover,
  .pawly-category-card:hover,
  .pawly-category-card:hover img,
  .site-header__icon-btn:hover,
  .btn--primary:hover,
  .site-footer__social a:hover{
    transform:none !important;
  }

  /* Continuous decorative motion is unnecessary on touch and can be costly while scrolling. */
  .announcement-bar__track,
  .hero-video__paws .paw,
  .hero-video__btn,
  .hero-video__btn::before,
  .hero-video__btn::after,
  .hero-video__btn .btn__paw,
  .newsletter__paws span,
  .pawly-category-card__paw,
  .pawly-category-card__orbit,
  .image-with-text__mini-pet,
  .product-card__preview-paw{
    animation:none !important;
  }

  /* Remove expensive blur effects from the scrolling surface. */
  .site-header,
  .btn--ghost,
  .hero-video__eyebrow,
  .pawly-category-card__content span,
  .image-with-text__pet-badge{
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }
}


/* =========================================================
   INSTAGRAM / FACEBOOK IN-APP BROWSER — GPU SAFE MODE
   The normal desktop/mobile design is unchanged.
   This mode is only activated by .peluditos-webview.
   ========================================================= */
@media (max-width: 749px){
  html.peluditos-webview,
  html.peluditos-webview body{
    background-attachment:scroll !important;
    scroll-behavior:auto !important;
  }

  /* Do not use content-visibility:auto/hidden in the Instagram WebView.
     Slow scrolling through those boundaries can trigger expensive repaints. */
  html.peluditos-webview #MainContent > section,
  html.peluditos-webview #MainContent > div.shopify-section,
  html.peluditos-webview .featured-collection,
  html.peluditos-webview .image-with-text,
  html.peluditos-webview .pawly-promise,
  html.peluditos-webview .rich-text,
  html.peluditos-webview .pawly-final-cta{
    content-visibility:visible !important;
    contain:none !important;
  }

  /* Remove fixed decorative layers. */
  html.peluditos-webview body.gradient #MainContent:before{
    display:none !important;
  }

  /* No continuous animations/transitions while the page is being scrolled. */
  html.peluditos-webview *,
  html.peluditos-webview *::before,
  html.peluditos-webview *::after{
    animation:none !important;
    transition:none !important;
    scroll-behavior:auto !important;
  }

  /* Eliminate expensive blur/filter effects. */
  html.peluditos-webview *,
  html.peluditos-webview *::before,
  html.peluditos-webview *::after{
    -webkit-backdrop-filter:none !important;
    backdrop-filter:none !important;
    filter:none !important;
  }

  /* Remove 3D/compositor transforms from scrolling cards. */
  html.peluditos-webview .pawly-category-card,
  html.peluditos-webview .product-card,
  html.peluditos-webview .feature-card,
  html.peluditos-webview .image-with-text__media,
  html.peluditos-webview .pawly-day__card{
    transform:none !important;
    transform-style:flat !important;
    will-change:auto !important;
  }

  /* Keep reveal content visible without waiting for scroll observers. */
  html.peluditos-webview [data-reveal],
  html.peluditos-webview [data-reveal].is-visible{
    opacity:1 !important;
    transform:none !important;
  }

  /* Reduce large shadow surfaces that otherwise create extra paint work. */
  html.peluditos-webview .product-card,
  html.peluditos-webview .feature-card,
  html.peluditos-webview .pawly-category-card,
  html.peluditos-webview .image-with-text,
  html.peluditos-webview .pawly-promise__grid,
  html.peluditos-webview .pawly-moments__photo,
  html.peluditos-webview .pawly-day__card{
    box-shadow:0 5px 16px rgba(23,26,23,.06) !important;
  }

  /* Hero video stays visually present but is paused by theme.js. */
  html.peluditos-webview .hero-video__bg video{
    animation:none !important;
    transform:none !important;
  }

  /* The WhatsApp button is fixed, but must not continuously animate. */
  html.peluditos-webview .peluditos-whatsapp{
    animation:none !important;
    transform:none !important;
    opacity:1 !important;
  }

  /* Header remains fixed/sticky if the theme uses it, but without blur/animation. */
  html.peluditos-webview .site-header{
    -webkit-backdrop-filter:none !important;
    backdrop-filter:none !important;
    filter:none !important;
  }
}
