/* Frame 401: Premium, subscriptions and footer. */
.premium { position: relative; margin-top: 140px; }
.premium-heading { position: relative; text-align: center; }
.premium-heading h2 { margin: 0 auto; color: var(--ink); font-size: 56px; font-weight: 600; line-height: 1; }
.premium-intro { max-width: 930px; margin: 40px auto 0; color: var(--muted); font-size: 24px; line-height: 1; }
.premium-paw { position: absolute; top: 12px; left: calc(50% - 255px); width: 39px; height: 36px; object-fit: cover; }
.premium-cat { position: absolute; top: 95px; left: 28px; width: 158px; height: 273px; }
.premium-cat img { top: -.97%; left: -6.46%; width: 124.88%; height: 104.29%; max-width: none; }
.premium-bowl { position: absolute; z-index: 2; top: 158px; right: -8.608px; display: flex; align-items: center; justify-content: center; width: 261.608px; height: 252.03px; }
.premium-bowl img { width: 205px; height: 187px; object-fit: cover; transform: rotate(-22.9deg); }
.premium-benefits { position: relative; z-index: 1; margin-top: 60px; padding-top: 50px; padding-bottom: 50px; overflow: hidden; border-radius: 40px; background: #e3f9f6; }
.premium-benefits h3 { margin: 0 50px 40px; color: var(--ink); font-size: 36px; font-weight: 600; line-height: 1; }
.premium-benefits-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-template-rows: 226px 212px; }
.premium-benefit { padding: 60px 40px 0 50px; }
.premium-benefit h4 { margin: 0; color: var(--ink); font-size: 24px; font-weight: 600; line-height: 1; white-space: nowrap; }
.premium-benefit p { max-width: 274px; margin: 20px 0 0; color: var(--muted); font-size: 24px; line-height: 1; }
.premium-benefit:nth-child(2) p { max-width: 404px; }
.premium-benefit:nth-child(5) p { max-width: 365px; }
.premium-divider { position: absolute; }
.premium-divider img { display: block; max-width: none; }
.premium-divider-horizontal { left: 50px; top: 351px; }
.premium-divider-vertical { top: 126px; transform: rotate(90deg); transform-origin: top left; }
.premium-divider-first { left: 467px; }
.premium-divider-second { left: 933px; }
.premium-junction { position: absolute; top: 344px; width: 16px; height: 16px; background: #180f2a; }
.premium-junction-first { left: 459px; }
.premium-junction-second { left: 925px; }
.premium-plans { position: relative; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin-top: 120px; scroll-margin-top: 32px; }
.plan { position: relative; display: flex; flex-direction: column; min-width: 0; min-height: 575px; padding: 40px; overflow: clip; border-radius: 40px; }
.plan > :not(.decor) { position: relative; z-index: 1; }
.plan-monthly { box-shadow: inset 0 0 0 1px var(--purple); color: #333139; }
.plan-annual { background: var(--purple); color: #f5f3ff; }
.plan-top { display: flex; align-items: center; justify-content: space-between; height: 34px; }
.plan-label { display: inline-flex; align-items: center; justify-content: center; height: 34px; margin: 0; padding: 0 11px; border: 1px solid currentColor; border-radius: 14px; font-size: 14px; font-weight: 500; line-height: 1; }
.plan-monthly .plan-label { color: var(--purple); }
.plan-annual .plan-label { color: #f0e100; }
.plan-best { display: inline-flex; align-items: center; gap: 9px; height: 34px; padding: 0 10px; border-radius: 14px; background: #f0e100; color: #292929; font-size: 14px; font-weight: 500; line-height: 1; }
.plan-best img { display: block; flex-shrink: 0; }
.plan-price { display: flex; align-items: baseline; margin: 31px 0 0; white-space: nowrap; }
.plan-amount { font-size: 102px; font-weight: 600; line-height: 1.1;}
.plan-period { margin-left: 0; font-size: 24px; font-weight: 500; line-height: 1.1; }
.plan-summary { margin: 30px 0 0; color: var(--muted); font-size: 16px; line-height: 1; }
.plan-features { display: flex; flex-direction: column; gap: 12px; margin: 29px 0 0; padding: 0; list-style: none; color: var(--muted); }
.plan-features li { display: flex; align-items: center; gap: 14px; min-height: 20px; font-size: 16px; line-height: 1; }
.plan-features img { display: block; flex-shrink: 0; }
.plan-action { width: 100%; min-height: 54px; padding: 16px 30px; margin-top: auto; border: 0; background: var(--purple); color: #fff; font: inherit; font-size: 20px; line-height: 1; cursor: pointer; }
.plan-annual .plan-period { margin-left: 0; }
.plan-discounts { display: flex; gap: 10px; margin-top: 10px; }
.plan-discounts span { display: inline-flex; align-items: center; justify-content: center; height: 34px; padding: 0 12px; border-radius: 14px; background: rgb(245 243 255 / 60%); color: #292929; font-size: 14px; font-weight: 500; line-height: 1; }
.plan-annual .plan-summary { margin-top: 30px; color: #fff; }
.plan-annual .plan-features { margin-top: 30px; color: #fff; }
.plan-annual .plan-action { background: #f5f3ff; color: #312f37; font-weight: 500; }
.plan-wave-monthly { position: absolute; top: -77.5px; left: 120.36px; transform: scaleX(-1); }
.plan-wave-monthly img, .plan-wave-annual img { display: block; max-width: none; }
.plan-wave-annual { position: absolute; top: -177.04px; left: -96.8px; display: flex; align-items: center; justify-content: center; width: 920.35px; height: 872.9px; }
.plan-wave-annual-rotation { position: relative; width: 726.522px; height: 633.698px; transform: rotate(156.21deg) scaleX(-1); }
.plan-wave-annual img { position: absolute; top: -19.518px; left: -19.471px; }
.plan-cat { position: absolute; z-index: 2; top: 191px; right: -69px; width: 170px; height: 248px; }
.plan-cat img { top: -1.31%; left: -14.29%; width: 128.8%; height: 105.69%; max-width: none; }
.footer { position: relative; margin-top: 160px; min-height: 300px; overflow: hidden; border-radius: 80px 80px 0 0; background: #201e1f; color: #fff; }
.footer-wave { position: absolute; top: -69.003px; left: calc(50% - 1045px); transform: rotate(180deg); }
.footer-wave img { display: block; max-width: none; }
.footer-content { position: relative; display: flex; justify-content: space-between; gap: 80px; padding-top: 80px; padding-bottom: 80px; }
.footer-documents { display: flex; flex-direction: column; align-items: flex-start; gap: 30px; }
.footer-document { display: flex; align-items: flex-start; gap: 12px; margin: 0; padding: 0; border: 0; background: transparent; color: inherit; text-align: left; font: inherit; font-size: 16px; font-weight: 500; line-height: 1; cursor: pointer; }
.footer-document img { display: block; flex-shrink: 0; margin-top: 3px; }
.footer-document:last-child img { margin-top: 1px; }
.footer-contacts { display: flex; flex-direction: column; gap: 30px; width: 211px; margin-right: -100px; font-style: normal; }
.footer-contacts a { display: flex; align-items: center; gap: 13px; color: inherit; text-decoration: none; font-size: 16px; font-weight: 500; line-height: 1; white-space: nowrap; }
.footer-contacts img { display: block; flex-shrink: 0; }
.footer-contacts a:first-child { gap: 13px; height: 16px; }
.footer-tax { margin: 30px 0 0; color: #a2a1a1; font-size: 16px; font-weight: 500; line-height: 1; }
.footer-document:hover, .footer-contacts a:hover { color: #d6c3ff; }

@media (max-width: 1650px) {
  .premium-benefit { padding-left: 32px; padding-right: 24px; }
  .premium-benefit h4 { font-size: 22px; white-space: normal; }
  .premium-benefit p { font-size: 22px; }
  .premium-divider-vertical, .premium-junction { display: none; }
  .premium-divider-horizontal { right: 50px; overflow: hidden; }
  .premium-paw { left: calc(50% - 255px); }
  .premium-cat { left: 0; }
  .premium-bowl { right: -30px; }
  .plan-cat { right: -25px; }
  .plan-amount { font-size: clamp(64px, 5.3125vw, 102px); }
  .plan-features li { line-height: 1.25; }
  .footer-contacts { margin-right: 0; }
}
@media (max-width: 1150px) {
  .premium { margin-top: 100px; }
  .premium-heading h2 { font-size: 48px; }
  .premium-intro { max-width: 730px; font-size: 21px; line-height: 1.25; }
  .premium-desktop-break { display: none; }
  .premium-paw { top: 8px; left: calc(50% - 223px); }
  .premium-cat { top: 135px; left: -30px; transform: scale(.8); transform-origin: bottom left; }
  .premium-bowl { top: 195px; right: -30px; transform: scale(.7); transform-origin: right bottom; }
  .premium-benefits { margin-top: 70px; }
  .premium-benefits h3 { margin-left: 32px; font-size: 32px; }
  .premium-benefits-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: none; gap: 42px 0; }
  .premium-benefit { padding-top: 20px; padding-bottom: 10px; }
  .premium-benefit h4 { font-size: 22px; }
  .premium-benefit p { margin-top: 16px; font-size: 20px; line-height: 1.15; }
  .premium-divider { display: none; }
  .premium-plans { gap: 20px; margin-top: 80px; }
  .plan { min-height: 560px; padding: 30px; }
  .plan-best { gap: 5px; padding: 0 8px; }
  .plan-amount { font-size: 64px; letter-spacing: -2px; }
  .plan-period { font-size: 20px; }
  .plan-summary { line-height: 1.25; }
  .plan-features { margin-top: 24px; }
  .plan-features li { align-items: flex-start; gap: 10px; font-size: 15px; }
  .plan-action { font-size: 18px; }
  .plan-cat { top: 175px; right: -25px; transform: scale(.65); transform-origin: right center; }
  .footer { margin-top: 100px; border-radius: 60px 60px 0 0; }
}
@media (max-width: 760px) {
  .premium { margin-top: 72px; }
  .premium-heading h2 { font-size: clamp(30px, 7.6vw, 46px); line-height: 1.06; }
  .premium-intro { margin-top: 26px; font-size: 18px; line-height: 1.3; }
  .premium-paw { display: none; }
  .premium-cat { top: 158px; left: -18px; transform: scale(.55); }
  .premium-bowl { top: 224px; right: -16px; transform: scale(.52); }
  .premium-benefits { margin-top: 100px; padding: 30px 0; border-radius: 28px; }
  .premium-benefits h3 { margin: 0 26px 24px; font-size: 28px; }
  .premium-benefits-grid { grid-template-columns: 1fr; gap: 24px; }
  .premium-benefit { padding: 10px 26px; }
  .premium-benefit h4 { font-size: 22px; }
  .premium-benefit p, .premium-benefit:nth-child(2) p, .premium-benefit:nth-child(5) p { max-width: 100%; margin-top: 12px; font-size: 18px; line-height: 1.25; }
  .premium-plans { grid-template-columns: 1fr; gap: 24px; margin-top: 60px; }
  .plan { min-height: 560px; padding: 28px; border-radius: 28px; }
  .plan-amount { font-size: clamp(52px, 16vw, 84px); }
  .plan-price { margin-top: 30px; }
  .plan-summary { max-width: 100%; margin-top: 28px; font-size: 16px; line-height: 1.3; }
  .plan-features { gap: 16px; margin-top: 28px; }
  .plan-features li { font-size: 16px; line-height: 1.3; }
  .plan-action { margin-top: auto; min-height: 54px; }
  .plan-annual .plan-action { margin-top: auto; }
  .plan-discounts { margin-top: 14px; }
  .plan-cat { top: auto; bottom: -66px; right: 8px; transform: scale(.32); transform-origin: right bottom; }
  .footer { margin-top: 72px; border-radius: 40px 40px 0 0; }
  .footer-content { flex-direction: column; gap: 42px; padding-top: 48px; padding-bottom: 48px; }
  .footer-documents { gap: 26px; }
  .footer-document { align-items: flex-start; gap: 12px; font-size: 14px; line-height: 1.2; }
  .footer-document img { margin-top: 1px; }
  .footer-document br { display: none; }
  .footer-contacts { gap: 24px; }
  .footer-tax { margin-top: 8px; font-size: 14px; }
}
