/* ===== PharmCenter Partners Landing ===== */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Manrope:wght@500;700;800&display=swap');

* { margin: 0; padding: 0; box-sizing: border-box; }

html { scroll-behavior: smooth; }
body { margin: 0; background: #FFFFFF; font-family: 'Inter', sans-serif; color: #0B1F22; }
a { color: #006D80; text-decoration: none; }
a:hover { color: #04808F; }
input, select, textarea { font-family: 'Inter', sans-serif; }

.sticky-cta { display: none; }

/* Prevent any horizontal overflow globally */
html, body { max-width: 100%; overflow-x: hidden; }
img, video { max-width: 100%; }

@media (max-width: 760px) {
  .sticky-cta { display: flex; }
  .desktop-nav { display: none !important; }
  h1 { font-size: 30px !important; }
  h2 { font-size: 24px !important; }

  /* Sections: reduce heavy padding on small screens */
  .pc-section { padding-top: 56px !important; padding-bottom: 56px !important; padding-left: 16px !important; padding-right: 16px !important; }
  .pc-nav-bar { padding-left: 16px !important; padding-right: 16px !important; }

  /* Benefits: single column, wide tile spans full width */
  .pc-benefits-grid { grid-template-columns: 1fr !important; }
  .pc-benefit-wide { grid-column: span 1 !important; }

  /* Hero reward tiles: shrink value so nothing clips */
  .pc-hero-tile-value { font-size: 16px !important; }

  /* Leave room above the fixed bottom CTA bar */
  body { padding-bottom: 56px; }
}

@media (max-width: 420px) {
  h1 { font-size: 26px !important; }
  /* Hero mini-stats: two columns when very narrow */
  .pc-hero-tiles { grid-template-columns: 1fr 1fr !important; }
  /* Drop fixed min-widths so flex columns can shrink to fit tiny screens */
  [style*="min-width"] { min-width: 0 !important; }
  #hero { padding-left: 16px !important; padding-right: 16px !important; }
}

/* ===== Keyframes ===== */
@keyframes pc-pop { 0% { opacity:0; transform:scale(.9) translateY(10px); } 100% { opacity:1; transform:scale(1) translateY(0); } }
@keyframes pc-check-pop { 0% { opacity:0; transform:scale(.3) rotate(-20deg); } 60% { opacity:1; transform:scale(1.15) rotate(4deg); } 100% { opacity:1; transform:scale(1) rotate(0); } }
@keyframes pc-float { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-10px); } }
@keyframes pc-pulse { 0%,100% { opacity:.5; } 50% { opacity:1; } }
@keyframes pc-shine { 0% { transform:translateX(-120%) skewX(-15deg); } 100% { transform:translateX(220%) skewX(-15deg); } }
@keyframes pc-glow-ring { 0%,100% { box-shadow:0 0 0 0 rgba(228,75,78,0.45); } 50% { box-shadow:0 0 0 10px rgba(228,75,78,0); } }
@keyframes pc-num-pop { 0% { opacity:0; transform:translateY(6px) scale(.92); } 100% { opacity:1; transform:translateY(0) scale(1); } }
@keyframes pc-aurora { 0%,100% { background-position:0% 50%; } 50% { background-position:100% 50%; } }
@keyframes pc-spin-slow { from { transform:rotate(0deg); } to { transform:rotate(360deg); } }

/* ===== Shine button ===== */
.pc-shine-btn { position:relative; overflow:hidden; }
.pc-shine-btn::after { content:''; position:absolute; top:0; left:0; width:40%; height:100%; background:linear-gradient(120deg, transparent, rgba(255,255,255,0.35), transparent); transform:translateX(-120%) skewX(-15deg); }
.pc-shine-btn:hover::after { animation:pc-shine .9s ease; }
.pc-shine-tile { position:relative; overflow:hidden; }
.pc-shine-tile::after { content:''; position:absolute; top:0; left:0; width:45%; height:100%; background:linear-gradient(120deg, transparent, rgba(255,255,255,0.22), transparent); transform:translateX(-130%) skewX(-15deg); opacity:0; }
.pc-shine-tile:hover::after { animation:pc-shine-fade 1.6s ease; }
@keyframes pc-shine-fade { 0% { transform:translateX(-130%) skewX(-15deg); opacity:0; } 25% { opacity:.9; } 60% { opacity:.5; } 100% { transform:translateX(220%) skewX(-15deg); opacity:0; } }

/* ===== Hover effects (converted from style-hover) ===== */
.pc-nav-link { transition:color 0.2s, border-color 0.2s; }
.pc-nav-link:hover { color:#E44B4E !important; border-bottom:2px solid #E44B4E !important; }

.pc-cta-nav { transition:transform .25s ease, box-shadow .25s ease; }
.pc-cta-nav:hover { transform:translateY(-2px) scale(1.03); box-shadow:0 10px 26px rgba(228,75,78,0.38); }

.pc-cta-hero { transition:transform .25s ease, box-shadow .25s ease; }
.pc-cta-hero:hover { transform:translateY(-3px) scale(1.03); box-shadow:0 16px 36px rgba(228,75,78,0.45); }

.pc-cta-submit { transition:transform .25s ease, box-shadow .25s ease; }
.pc-cta-submit:hover { transform:translateY(-2px); box-shadow:0 16px 34px rgba(228,75,78,0.42); }

.pc-hero-tile { transition:transform .25s ease, background .25s ease, border-color .25s ease; }
.pc-hero-tile:hover { transform:translateY(-4px); background:rgba(255,255,255,0.1); border-color:rgba(127,215,224,0.5); }

.pc-stat { transition:transform .7s cubic-bezier(.16,1,.3,1), opacity .7s cubic-bezier(.16,1,.3,1), box-shadow .3s ease, border-color .3s ease; }
.pc-stat:hover { transform:translateY(-6px) !important; border-color:rgba(127,215,224,0.5); box-shadow:0 20px 36px -16px rgba(0,0,0,0.5); }

.pc-benefit { transition:transform .7s cubic-bezier(.16,1,.3,1), opacity .7s cubic-bezier(.16,1,.3,1), box-shadow .3s ease; }
.pc-benefit:hover { transform:translateY(-8px) scale(1.015) !important; box-shadow:0 30px 50px -18px rgba(0,109,128,0.32); }

.pc-benefit-wide { transition:transform .7s cubic-bezier(.16,1,.3,1), opacity .7s cubic-bezier(.16,1,.3,1), box-shadow .3s ease; }
.pc-benefit-wide:hover { transform:translateY(-6px) !important; box-shadow:0 24px 44px -18px rgba(1,56,64,0.5); }

.pc-audience-ic { transition:transform .3s ease; }
.pc-audience-ic:hover { transform:translateY(-5px) scale(1.06); }

.pc-role { transition:opacity .7s cubic-bezier(.16,1,.3,1), transform .7s cubic-bezier(.16,1,.3,1), border-color .3s ease; }
.pc-role:hover { border-color:rgba(127,215,224,0.6); }

.pc-video { transition:opacity .7s cubic-bezier(.16,1,.3,1), transform .3s ease, box-shadow .3s ease; }
.pc-video:hover { transform:translateY(-6px) scale(1.02) !important; box-shadow:0 26px 44px -18px rgba(1,56,64,0.55); }
.pc-video:hover .pc-video-play { transform:scale(1.12); background:rgba(255,255,255,0.28); }
.pc-video-play { transition:transform .3s ease, background .3s ease; }

/* ===== Form focus ===== */
.pc-input { transition:border-color .2s ease, box-shadow .2s ease; }
.pc-input:focus { border-color:#006D80; box-shadow:0 0 0 3px rgba(0,109,128,0.12); outline:none; }

/* ===== Range slider ===== */
input[type="range"] { accent-color:#006D80; height:6px; }

/* ===== Reveal (scroll animation) ===== */
[data-reveal] { will-change: opacity, transform; }
