/* RickParma.com visual polish pass — design only, no behavior changes */
:root{
  --bg:#070809;
  --panel:#111317;
  --panel-2:#171a20;
  --text:#f8fafc;
  --muted:#a8b0bd;
  --pink:#ff4fd8;
  --blue:#43d7ff;
  --border:rgba(255,255,255,.13);
  --font-display:'Playfair Display',Georgia,serif;
  --font-ui:'Helvetica Neue',Arial,sans-serif;
  --shadow-soft:0 14px 45px rgba(0,0,0,.38);
  --shadow-glow:0 0 0 1px rgba(255,255,255,.05),0 16px 44px rgba(0,0,0,.42),0 0 32px rgba(67,215,255,.08);
}
body{
  font-family:var(--font-ui);
  background:radial-gradient(circle at 50% -10%,rgba(67,215,255,.08),transparent 28%),var(--bg);
  letter-spacing:.005em;
}
header{
  padding:32px 24px 28px;
  gap:16px;
  background:linear-gradient(180deg,#050505 0%,#090a0c 100%);
  border-bottom:1px solid rgba(255,255,255,.10);
  box-shadow:0 10px 35px rgba(0,0,0,.32);
}
header h1{
  font-family:var(--font-display);
  font-size:clamp(2.7rem,7vw,4.2rem);
  letter-spacing:.035em;
  line-height:.92;
  text-shadow:0 3px 24px rgba(0,0,0,.55);
}
header h1 a{
  background:linear-gradient(180deg,#fff 10%,#dce4ee 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.socials{gap:14px;}
.socials a{
  width:58px;height:58px;border-radius:18px;color:#d7dde7;
  background:linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.035));
  border:1px solid rgba(255,255,255,.11);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 8px 24px rgba(0,0,0,.28);
  transition:transform .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.socials a:hover{
  transform:translateY(-2px);color:#fff;border-color:rgba(67,215,255,.5);
  background:linear-gradient(145deg,rgba(67,215,255,.18),rgba(255,79,216,.10));
  box-shadow:0 10px 28px rgba(0,0,0,.35),0 0 22px rgba(67,215,255,.12);
}
.socials svg{width:30px;height:30px;}
h2,h2.display-heading,.hero-title{text-wrap:balance;text-shadow:0 4px 22px rgba(0,0,0,.45);}
h2.display-heading{
  font-family:var(--font-display);font-size:clamp(2rem,5vw,2.85rem);
  letter-spacing:.015em;line-height:1.05;
}
.hero-title{
  font-family:var(--font-display);font-size:clamp(2.45rem,7vw,4rem);
  letter-spacing:.015em;line-height:1;text-transform:none;margin-bottom:30px;
}
.hero-title .accent{color:var(--blue);text-shadow:0 0 24px rgba(67,215,255,.28);}
.eyebrow{color:#c1c8d2;font-weight:700;letter-spacing:.18em;}
.btn-caption,.tip-sub,.player-note,.join-box .fine-print{color:#b4bcc7;}
.btn-caption{max-width:340px;margin-top:12px;font-size:.92rem;line-height:1.45;}
.band{padding-top:36px;padding-bottom:36px;}
.band::after{background:linear-gradient(180deg,rgba(5,5,8,.66),rgba(5,5,8,var(--overlay,.6)));}
.band-inner{max-width:980px;}
.rp-card-panel{
  background:linear-gradient(180deg,rgba(18,20,25,.82),rgba(10,11,14,.72));
  border:1px solid rgba(255,255,255,.13);border-radius:26px;padding:32px 26px 34px;
  box-shadow:var(--shadow-glow);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
}
.rp-card-panel::after{
  content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),inset 0 -1px 0 rgba(255,255,255,.03);
}
.glow-btn,.tip-cta-btn,.buy-btn,.submit-btn,.rpc-subscribe a,.cal-detail-actions a.primary,.show-actions a{
  position:relative;border:none;background:linear-gradient(110deg,#44d8ff 0%,#80c8ff 34%,#ff5dd9 100%);
  color:#05070a;font-weight:800;letter-spacing:.04em;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.58),0 10px 28px rgba(0,0,0,.38),0 0 24px rgba(67,215,255,.13);
  transition:transform .18s ease,filter .18s ease,box-shadow .18s ease;
}
.tip-cta-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:260px;
  padding:18px 54px;
  border-radius:999px;
  white-space:nowrap;
  text-transform:uppercase;
  font-size:1.35rem;
  font-weight:900;
  letter-spacing:.08em;
  line-height:1;
}
.glow-btn:hover,.tip-cta-btn:hover,.buy-btn:hover,.submit-btn:hover,.rpc-subscribe a:hover,.cal-detail-actions a.primary:hover,.show-actions a:hover{
  transform:translateY(-2px);filter:brightness(1.08) saturate(1.05);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.68),0 14px 34px rgba(0,0,0,.45),0 0 28px rgba(67,215,255,.20);
}
.tip-amt{
  min-width:84px;border-color:rgba(255,255,255,.16);
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.015));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 8px 20px rgba(0,0,0,.20);
}
.tip-amt:hover{background:rgba(67,215,255,.08);}
.tip-amt.active{
  background:linear-gradient(110deg,#44d8ff,#ff5dd9);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55),0 10px 26px rgba(0,0,0,.36),0 0 24px rgba(67,215,255,.16);
}
.rp-player,.product-card,.show-tile{
  background:linear-gradient(180deg,rgba(20,22,27,.88),rgba(12,13,16,.84));
  border-color:rgba(255,255,255,.12);
  box-shadow:var(--shadow-soft),inset 0 1px 0 rgba(255,255,255,.04);
}
.rp-player{border-radius:20px;padding:18px 20px;}
.product-card{border-radius:22px;}
.show-tile{border-radius:18px;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;}
.show-tile:hover{
  transform:translateY(-3px);border-color:rgba(67,215,255,.28);
  box-shadow:0 16px 34px rgba(0,0,0,.34),0 0 20px rgba(67,215,255,.07);
}
.show-date-badge{
  border-radius:14px;box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 8px 20px rgba(0,0,0,.26);
}
.show-actions a.alt,.cal-detail-actions-row a.alt{
  background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.14);color:#e8edf4;
}
form.booking label,fieldset legend{color:#c2c8d1;font-weight:700;letter-spacing:.1em;}
form.booking input,form.booking select,form.booking textarea,fieldset{
  background:rgba(7,8,10,.78);border-color:rgba(255,255,255,.14);border-radius:12px;
}
form.booking input,form.booking select,form.booking textarea{
  padding:13px 14px;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
form.booking input:focus,form.booking select:focus,form.booking textarea:focus{
  outline:none;border-color:rgba(67,215,255,.72);
  box-shadow:0 0 0 3px rgba(67,215,255,.11),0 8px 22px rgba(0,0,0,.20);
  background:rgba(8,10,13,.96);
}
footer{background:#070809;border-top-color:rgba(255,255,255,.08);letter-spacing:.02em;}
@media(max-width:600px){
  header{padding:26px 18px 22px;}
  .socials a{width:54px;height:54px;border-radius:16px;}
  .socials svg{width:27px;height:27px;}
  .band{padding:26px 14px;}
  .band-hero{padding:32px 14px 28px;}
  .rp-card-panel{border-radius:22px;padding:26px 18px 28px;}
  .hero-title{margin-bottom:24px;}
  .tip-amounts{gap:8px;}
  .tip-amt{min-width:70px;padding:12px 16px;}
  .tip-cta-btn{min-width:min(300px,82vw);padding:17px 42px;font-size:1.25rem;}
}
