:root{
    --pink:#E85C8A;
    --pink-deep:#C43F6C;
    --pink-pale:#FBE4EB;
    --plum:#2E1B2E;
    --cream:#FDF3F0;
    --rose:#F8DCE3;
    --sage:#6E8C64;
    --sage-pale:#E7EEE2;
    --gold:#F2B84B;
    --white:#FFFFFF;
    --line:rgba(46,27,46,0.12);
    --shadow: 0 12px 30px -14px rgba(196,63,108,0.35);
    --radius: 20px;
    --serif: 'Fraunces', serif;
    --sans: 'Plus Jakarta Sans', sans-serif;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    *{animation-duration:0.001ms !important; animation-iteration-count:1 !important; transition-duration:0.001ms !important;}
  }
  body{
    margin:0;
    font-family:var(--sans);
    color:var(--plum);
    background:var(--cream);
    -webkit-font-smoothing:antialiased;
  }
  a{color:inherit;}
  img{max-width:100%;display:block;}
  button{font-family:inherit;}

  .visually-hidden{
    position:absolute; width:1px; height:1px; padding:0; margin:-1px;
    overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;
  }

  /* ---------- Focus ---------- */
  a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible{
    outline:3px solid var(--gold);
    outline-offset:2px;
    border-radius:6px;
  }

  /* ---------- Top bar ---------- */
  header.topbar{
    position:sticky; top:0; z-index:50;
    background:rgba(253,243,240,0.88);
    backdrop-filter:blur(10px);
    border-bottom:1px solid var(--line);
  }
  .topbar-inner{
    max-width:1180px; margin:0 auto;
    display:flex; align-items:center; justify-content:space-between;
    padding:14px 24px;
    gap:16px;
  }
  .brand{
    display:flex; align-items:center; gap:10px;
    text-decoration:none;
    font-family:var(--serif); font-weight:600; font-size:1.05rem;
    color:var(--plum);
  }
  .brand svg{flex-shrink:0;}
  .brand .sub{
    display:block; font-family:var(--sans); font-weight:600;
    font-size:0.62rem; letter-spacing:0.14em; text-transform:uppercase;
    color:var(--pink-deep); margin-top:1px;
  }
  nav.pillnav{
    display:flex; gap:4px; background:var(--rose);
    padding:5px; border-radius:999px; flex-wrap:wrap;
  }
  nav.pillnav a{
    border:none; background:transparent; cursor:pointer;
    padding:9px 16px; border-radius:999px;
    font-size:0.86rem; font-weight:600; color:var(--plum);
    transition:background .18s ease, color .18s ease;
    white-space:nowrap;
    text-decoration:none; display:inline-block;
  }
  nav.pillnav a:hover{background:rgba(255,255,255,0.6);}
  nav.pillnav a.active{background:var(--pink); color:#fff; box-shadow:var(--shadow);}
  .nav-toggle{
    display:none; border:none; background:var(--rose); border-radius:12px;
    width:42px; height:42px; cursor:pointer; align-items:center; justify-content:center;
  }

  @media (max-width:880px){
    nav.pillnav{
      display:none; position:absolute; top:64px; left:16px; right:16px;
      flex-direction:column; background:var(--white); box-shadow:var(--shadow);
      border-radius:16px; padding:10px;
    }
    nav.pillnav.open{display:flex;}
    nav.pillnav button{text-align:left;}
    .nav-toggle{display:flex;}
  }

  /* ---------- Layout helpers ---------- */
  .wrap{max-width:1180px; margin:0 auto; padding:0 24px;}
  section.page{display:none;}
  section.page.active{display:block;}
  .eyebrow{
    font-size:0.72rem; font-weight:700; letter-spacing:0.16em; text-transform:uppercase;
    color:var(--pink-deep); margin:0 0 10px;
  }
  h1,h2,h3{font-family:var(--serif); margin:0 0 0.5em; line-height:1.08; font-weight:600;}
  h1{font-size:clamp(2.4rem,5vw,4rem); font-weight:600;}
  h2{font-size:clamp(1.7rem,3.2vw,2.5rem);}
  h3{font-size:1.25rem;}
  p{line-height:1.65; color:#4B3A4B;}
  .lede{font-size:1.15rem; color:#5A445A; max-width:60ch;}

  .btn{
    display:inline-flex; align-items:center; gap:8px;
    padding:13px 26px; border-radius:999px; font-weight:700; font-size:0.92rem;
    text-decoration:none; border:2px solid transparent; cursor:pointer;
    transition:transform .15s ease, box-shadow .15s ease, background .15s ease;
  }
  .btn-primary{background:var(--pink); color:#fff; box-shadow:var(--shadow);}
  .btn-primary:hover{background:var(--pink-deep); transform:translateY(-2px);}
  .btn-ghost{background:transparent; border-color:var(--plum); color:var(--plum);}
  .btn-ghost:hover{background:var(--plum); color:#fff;}

  /* ---------- Heartbeat divider (signature element) ---------- */
  .pulse-divider{width:100%; height:52px; margin:8px 0 0; overflow:hidden;}
  .pulse-divider svg{width:100%; height:100%; display:block;}
  .pulse-path{
    fill:none; stroke:var(--pink); stroke-width:2.5; stroke-linecap:round; stroke-linejoin:round;
    stroke-dasharray:1400; stroke-dashoffset:1400;
    transition:stroke-dashoffset 1.4s ease;
  }
  .pulse-divider.in-view .pulse-path{stroke-dashoffset:0;}

  .quote-section{padding-top:42px;}
  .kindness-quote{
    max-width:900px; margin:0 auto; padding:clamp(28px,5vw,52px); border-radius:28px;
    background:linear-gradient(135deg,var(--rose),var(--pink-pale) 60%,var(--sage-pale)); text-align:center;
    box-shadow:var(--shadow);
  }
  .kindness-quote svg{width:34px; height:29px; color:var(--pink-deep); margin-bottom:12px;}
  .kindness-quote p{max-width:720px; margin:0 auto 15px; font-family:var(--serif); font-size:clamp(1.45rem,3vw,2.2rem); font-weight:500; line-height:1.3; color:var(--plum);}
  .kindness-quote cite{font-size:.82rem; font-style:normal; font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:var(--pink-deep);}

  /* ---------- Hero ---------- */
  .hero{padding:76px 0 10px;}
  .hero-grid{
    display:grid; grid-template-columns:1.1fr 0.9fr; gap:48px; align-items:center;
  }
  @media (max-width:880px){.hero-grid{grid-template-columns:1fr;}}
  .hero h1 em{
    font-style:italic; color:var(--pink-deep); font-weight:500;
  }
  .hero-actions{display:flex; gap:12px; flex-wrap:wrap; margin-top:28px;}
  .hero-art{
    aspect-ratio:1/1; border-radius:40px;
    display:flex; align-items:center; justify-content:center; position:relative; overflow:hidden;
  }
  .hero-art img{width:100%; height:100%; object-fit:cover;}

  .social-row{display:flex; gap:10px; margin-top:26px; flex-wrap:wrap;}
  .social-chip{
    display:flex; align-items:center; gap:8px; padding:9px 16px 9px 12px;
    background:var(--white); border:1.5px solid var(--line); border-radius:999px;
    text-decoration:none; font-weight:600; font-size:0.85rem; color:var(--plum);
    transition:border-color .15s ease, transform .15s ease;
  }
  .social-chip:hover{border-color:var(--pink); transform:translateY(-1px);}

  /* ---------- Sections generic ---------- */
  .block{padding:64px 0;}
  .block-tight{padding:44px 0;}
  .card{
    background:var(--white); border-radius:var(--radius); padding:28px;
    border:1px solid var(--line);
  }
  .grid-2{display:grid; grid-template-columns:1fr 1fr; gap:24px;}
  .grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
  .grid-4{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}
  @media (max-width:880px){
    .grid-2{grid-template-columns:1fr;}
    .grid-3{grid-template-columns:1fr 1fr;}
    .grid-4{grid-template-columns:1fr 1fr;}
  }
  @media (max-width:560px){
    .grid-3{grid-template-columns:1fr;}
    .grid-4{grid-template-columns:1fr;}
  }

  /* About */
  #about{padding:82px 0;}
  .about-intro{padding-top:32px;}
  .about-card{background:var(--rose); border:none;}
  .why-started{min-height:600px; padding:32px; display:flex; flex-direction:column; justify-content:center;}
  .why-started h3{margin-bottom:22px; font-size:clamp(2.2rem,3.4vw,2.7rem);}
  .why-started p:not(.eyebrow){margin:0 0 18px; font-size:1.05rem; line-height:1.7;}
  .why-started .why-started-signature{margin:22px 0 0; font-family:var(--serif); font-size:1.12rem; font-weight:600; color:var(--pink-deep);}
  @media (max-width:880px){.about-intro{padding-top:0;}.why-started{min-height:0;}}
  .pillar{
    display:flex; gap:14px; padding:16px 0; border-top:1px solid var(--line);
  }
  .pillar:first-child{border-top:none;}
  .pillar .mark{
    font-family:var(--serif); font-weight:600; color:var(--pink-deep); font-size:1.1rem; flex-shrink:0; width:28px;
  }

  /* Officers */
  .officer{
    background:var(--white); border:1px solid var(--line); border-radius:18px;
    padding:22px; text-align:left;
  }
  .avatar{
    width:56px; height:56px; border-radius:50%; display:flex; align-items:center; justify-content:center;
    font-family:var(--serif); font-weight:600; color:#fff; font-size:1.05rem; margin-bottom:14px; overflow:hidden;
  }
  .avatar img{width:100%; height:100%; object-fit:cover; object-position:center 35%;}
  .avatar.default-avatar{background:#E8E5E8 !important;}
  .avatar.default-avatar svg{width:100%; height:100%;}
  .officer h4{margin:0 0 3px; font-size:1rem; font-weight:700;}
  .officer .role{color:var(--pink-deep); font-size:0.83rem; font-weight:600;}

  /* Wellness / Events */
  .wellness-card{
    background:var(--plum); color:#fff; border-radius:28px; padding:40px;
    display:grid; grid-template-columns:1fr 1fr; gap:36px; align-items:stretch;
  }
  @media (max-width:880px){.wellness-card{grid-template-columns:1fr; padding:26px;}}
  .wellness-card-copy{
    display:flex; flex-direction:column; justify-content:center; height:100%;
  }
  .wellness-card-copy .wellness-card-btn{margin-top:32px; align-self:flex-start;}
  @media (max-width:880px){.wellness-card-copy .wellness-card-btn{margin-top:24px;}}
  .wellness-card p{color:rgba(255,255,255,0.78);}
  .tag{
    display:inline-block; background:rgba(255,255,255,0.12); color:#fff;
    padding:6px 14px; border-radius:999px; font-size:0.75rem; font-weight:700;
    letter-spacing:0.04em; margin-bottom:14px;
  }
  .wellness-episode-tag{
    font-size:1.35rem; padding:10px 20px; margin-bottom:18px;
    letter-spacing:0.02em; line-height:1.3;
  }
  .video-frame{
    position:relative; width:100%; aspect-ratio:16/9; border-radius:16px; overflow:hidden;
    box-shadow:0 20px 40px -12px rgba(0,0,0,0.5);
  }
  .video-frame iframe{width:100%; height:100%; border:0; display:block;}
  .video-play{
    position:absolute; inset:0; width:100%; height:100%; padding:0; border:0;
    background:#000; cursor:pointer;
  }
  .video-play img{width:100%; height:100%; object-fit:cover; display:block; opacity:0.92;}
  .video-play::after{
    content:""; position:absolute; inset:0; margin:auto; width:68px; height:48px;
    background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 68 48'%3E%3Cpath fill='%23f00' d='M66.5 7.7a8.5 8.5 0 0 0-6-6C55.9 0 34 0 34 0S12.1 0 7.5 1.7a8.5 8.5 0 0 0-6 6C0 12.3 0 24 0 24s0 11.7 1.5 16.3a8.5 8.5 0 0 0 6 6C12.1 48 34 48 34 48s21.9 0 26.5-1.7a8.5 8.5 0 0 0 6-6C68 35.7 68 24 68 24s0-11.7-1.5-16.3z'/%3E%3Cpath fill='%23fff' d='M27 34V14l18 10-18 10z'/%3E%3C/svg%3E") center/contain no-repeat;
  }

  .event-placeholder{
    border:2px dashed var(--line); border-radius:20px; padding:36px; text-align:center; color:#7a637a;
  }

  /* Articles */
  .article-card{border:1px solid var(--line); border-radius:18px; padding:22px; background:var(--white);}
  .article-card .tag-sm{
    font-size:0.7rem; font-weight:700; text-transform:uppercase; letter-spacing:0.08em;
    color:var(--sage); background:var(--sage-pale); padding:4px 10px; border-radius:999px; display:inline-block; margin-bottom:12px;
  }
  .sample-flag{
    font-size:0.75rem; color:#8a748a; font-style:italic; margin-top:10px;
  }
  .articles-coming-soon{
    display:grid; grid-template-columns:minmax(0,1.25fr) minmax(220px,.75fr); gap:36px; align-items:center;
    padding:clamp(28px,5vw,56px); border:1px solid var(--line); border-radius:28px;
    background:linear-gradient(135deg,var(--white) 0%,var(--rose) 100%); box-shadow:var(--shadow);
  }
  .articles-coming-soon h2{max-width:620px; margin:14px 0;}
  .articles-coming-soon .lede{margin:0 0 26px;}
  .coming-soon-tag{display:inline-block; padding:7px 12px; border-radius:999px; background:var(--sage-pale); color:#3d5236; font-size:.75rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase;}
  .articles-coming-soon-art{width:min(100%,260px); aspect-ratio:1; justify-self:center; display:grid; place-items:center; border-radius:50%; background:rgba(255,255,255,.58); box-shadow:inset 0 0 0 14px rgba(232,92,138,.12);}
  .articles-coming-soon-art svg{width:68%; height:68%;}
  @media (max-width:700px){.articles-coming-soon{grid-template-columns:1fr;}.articles-coming-soon-art{width:180px; grid-row:1;}}

  /* Guidelines */
  .guideline-item{display:flex; gap:12px; align-items:flex-start; padding:14px 0; border-top:1px solid var(--line);}
  .guideline-item:first-child{border-top:none;}
  .guideline-item svg{flex-shrink:0; margin-top:3px;}

  /* Forms */
  form{display:grid; gap:16px;}
  .field label{display:block; font-weight:700; font-size:0.85rem; margin-bottom:6px;}
  .field .hint{font-size:0.78rem; color:#8a748a; margin-top:4px;}
  input[type=text], input[type=email], input[type=tel], input[type=number], input[type=date], textarea, select{
    width:100%; padding:12px 14px; border-radius:12px; border:1.5px solid var(--line);
    font-family:inherit; font-size:0.95rem; background:var(--white); color:var(--plum);
  }
  textarea{resize:vertical; min-height:110px;}
  fieldset{border:none; padding:0; margin:0;}
  legend{font-weight:700; font-size:0.85rem; margin-bottom:8px; padding:0;}
  .check-grid{display:grid; grid-template-columns:1fr 1fr; gap:8px;}
  .check-row{display:flex; align-items:center; gap:8px; font-size:0.9rem;}
  .check-row input{width:auto;}
  .form-shell{background:var(--white); border-radius:24px; border:1px solid var(--line); padding:32px;}
  .confirm{
    display:none; background:var(--sage-pale); border:1px solid var(--sage); color:#3d5236;
    padding:16px 18px; border-radius:14px; font-weight:600; font-size:0.9rem; margin-top:4px;
  }
  .confirm.show{display:block;}
  .confirm-error{background:#FBE4E4; border-color:#D9534F; color:#7A2E2A;}

  /* Donate */
  .donate-hero{display:grid; grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr); gap:44px; align-items:center; padding:clamp(30px,6vw,72px); border-radius:32px; background:linear-gradient(135deg,var(--rose),var(--pink-pale) 62%,var(--sage-pale)); overflow:hidden;}
  .donate-copy h1{max-width:660px; margin-bottom:18px;}
  .donate-copy h1 em{font-style:italic; color:var(--pink-deep); font-weight:500;}
  .donate-copy .lede{margin:0 0 26px;}
  .donate-note{margin:13px 0 0; font-size:.82rem; color:#6f5b6f;}
  .donate-art{width:100%; justify-self:center; aspect-ratio:4/3; border-radius:24px; overflow:hidden; box-shadow:0 18px 36px -18px rgba(46,27,46,.45);}
  .donate-art img{width:100%; height:100%; object-fit:cover; object-position:center;}
  .donate-points{display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:22px;}
  .donate-points div{padding:22px; background:var(--white); border:1px solid var(--line); border-radius:18px;}
  .donate-points strong{display:block; color:var(--pink-deep); margin-bottom:7px; font-family:var(--serif); font-size:1.1rem;}
  .donate-points span{font-size:.86rem; line-height:1.55; color:#5A445A;}
  @media (max-width:880px){.donate-hero{grid-template-columns:1fr;}.donate-art{width:220px; grid-row:1;}.donate-points{grid-template-columns:1fr;}}

  /* Action cards (image + link, e.g. Join page) */
  .action-card{
    background:var(--white); border:1px solid var(--line); border-radius:24px;
    padding:28px; display:flex; flex-direction:column; gap:14px;
  }
  .action-art{
    width:100%; aspect-ratio:10/7; border-radius:16px; overflow:hidden;
  }
  .action-card h3{margin:0;}
  .action-card p{margin:0; font-size:0.95rem;}
  .action-card .btn{align-self:flex-start; margin-top:6px;}

  /* Contact */
  .contact-row{display:flex; align-items:center; gap:12px; padding:14px 0; border-top:1px solid var(--line);}
  .contact-row:first-child{border-top:none;}
  .contact-row .ic{
    width:38px; height:38px; border-radius:10px; background:var(--rose); display:flex; align-items:center; justify-content:center; flex-shrink:0;
  }

  .site-footer{
    margin-top:70px; padding:42px 0; background:var(--white); border-top:1px solid var(--line);
  }
  .footer-grid{display:grid; grid-template-columns:minmax(0,1.5fr) auto auto; gap:48px; align-items:start;}
  .footer-brand{display:inline-flex; flex-direction:column; font-family:var(--serif); font-size:1.35rem; font-weight:600; line-height:1; color:var(--plum); text-decoration:none;}
  .footer-brand span{margin-top:5px; font-family:var(--sans); font-size:0.62rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--pink-deep);}
  .footer-about p{max-width:560px; margin:16px 0 0; font-size:.88rem; color:#6f5b6f;}
  .footer-links,.footer-social{display:flex; flex-wrap:wrap; gap:14px; align-items:center; padding-top:7px;}
  .footer-links a,.footer-social a{color:var(--plum); text-decoration:none; font-size:.86rem; font-weight:600;}
  .footer-links a:hover,.footer-social a:hover{color:var(--pink-deep);}
  .footer-social{gap:18px;}
  .footer-social a{display:inline-flex; align-items:center; gap:7px; color:var(--pink-deep);}
  .footer-social svg{width:19px; height:19px; stroke:currentColor; stroke-width:1.8;}
  @media (max-width:880px){.footer-grid{grid-template-columns:1fr; gap:20px;}.footer-links,.footer-social{padding-top:0;}}

  /* ---------- Partners & sponsors ---------- */
  .partners-hero{min-height:430px; padding-top:clamp(56px,8vw,100px); padding-bottom:58px; display:grid; grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr); gap:50px; align-items:center;}
  .partners-hero-copy h1{margin-bottom:18px;}
  .partners-hero-copy h1 em{font-style:italic; color:var(--pink-deep); font-weight:500;}
  .partners-hero-copy .lede{margin:0;}
  .partners-hero-art{width:min(100%,390px); justify-self:center; aspect-ratio:1; position:relative; display:grid; place-items:center; border-radius:50%; background:radial-gradient(circle at 30% 28%,#fff 0 7%,transparent 7.5%),linear-gradient(145deg,var(--pink-pale),var(--rose) 58%,var(--sage-pale)); overflow:hidden; box-shadow:0 26px 55px -30px rgba(46,27,46,.42);}
  .partners-hero-art svg{width:52%; position:relative; z-index:2; filter:drop-shadow(0 10px 12px rgba(196,63,108,.22));}
  .hero-orbit{position:absolute; inset:9%; border:1.5px solid rgba(196,63,108,.24); border-radius:50%;}
  .orbit-two{inset:22% -12%; transform:rotate(-28deg); border-color:rgba(110,140,100,.35);}
  .community-dot{position:absolute; width:16px; height:16px; border-radius:50%; background:var(--gold); z-index:2; box-shadow:0 0 0 6px rgba(255,255,255,.45);}
  .dot-one{top:22%; right:18%;}.dot-two{bottom:19%; left:16%; background:var(--sage);}.dot-three{bottom:13%; right:29%; width:10px; height:10px; background:var(--pink-deep);}
  .partners-section .lede{margin-bottom:32px;}
  .partner-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px;}
  .partner-card{min-height:302px; padding:28px; background:var(--white); border:1px solid var(--line); border-radius:22px; display:flex; flex-direction:column; align-items:flex-start; transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;}
  .partner-card:hover{transform:translateY(-5px); border-color:rgba(232,92,138,.55); box-shadow:var(--shadow);}
  .partner-card h3{margin:22px 0 8px;}.partner-card p{margin:0; font-size:.94rem;}
  .partner-logo{height:64px; min-width:150px; padding:0 17px; border-radius:13px; display:inline-flex; align-items:center; justify-content:center;}
  .nami-mark{font-family:var(--sans); letter-spacing:-.07em; font-size:1.72rem; font-weight:800; line-height:.85; color:#fff; background:#2578aa;}
  .nami-mark span{font-size:.45rem; margin-left:5px; letter-spacing:.04em; align-self:flex-end; margin-bottom:17px;}
  .invite-mark{width:64px; min-width:64px; padding:0; color:var(--sage); background:var(--sage-pale);}.invite-mark svg{width:36px;}
  .text-link{margin-top:auto; padding-top:22px; color:var(--pink-deep); font-size:.88rem; font-weight:800; text-decoration:none;}.text-link:hover{text-decoration:underline;}
  .sponsors-band{background:var(--white); border-top:1px solid var(--line); border-bottom:1px solid var(--line);}
  .sponsors-band .lede{margin-bottom:34px;}
  .sponsor-tiers{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; max-width:780px; margin:0 auto;}
  .sponsor-tier{min-height:245px; padding:24px; border-radius:20px; position:relative; overflow:hidden; border:1px solid var(--line); background:var(--cream); transition:transform .2s ease, box-shadow .2s ease;}
  .sponsor-tier:hover{transform:translateY(-5px); box-shadow:var(--shadow);}.sponsor-tier h3{margin:14px 0 8px; font-size:1.25rem;}.sponsor-tier p{margin:0; font-size:.9rem;}
  .tier-price{display:block; margin:0 0 10px; font-family:var(--serif); font-size:1.65rem; font-weight:600; color:var(--pink-deep); line-height:1;}
  .tier-label{display:inline-block; padding:6px 10px; border-radius:999px; background:rgba(255,255,255,.7); font-size:.67rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase;}.tier-icon{font-size:2.6rem; line-height:1; margin-top:21px;}
  .friend-tier{background:linear-gradient(145deg,#fff7e7,var(--cream));}.friend-tier .tier-icon{color:var(--gold);}.community-tier{background:linear-gradient(145deg,#f5efff,#fcf9ff);}.community-tier .tier-icon{color:#8065a1;}.advocate-tier{background:linear-gradient(145deg,var(--sage-pale),#f7faf5);}.advocate-tier .tier-icon{color:var(--sage);}.champion-tier{background:linear-gradient(145deg,var(--pink-pale),#fff8fa);}.champion-tier .tier-icon{color:var(--pink);}
  .sponsor-note{margin:23px 0 0; font-size:.82rem; color:#7a637a;}
  .partner-cta{display:flex; align-items:center; justify-content:space-between; gap:30px; padding:clamp(28px,5vw,52px); border-radius:28px; background:linear-gradient(135deg,var(--plum),#4b2948); color:var(--white); box-shadow:var(--shadow);}.partner-cta h2{max-width:650px; margin:0 0 14px;}.partner-cta p:not(.eyebrow){max-width:690px; margin:0; color:rgba(255,255,255,.8);}.partner-cta .eyebrow{color:#f5b3c8;}.partner-cta .hero-actions{flex-shrink:0; margin:0;}.partner-cta .btn-ghost{border-color:rgba(255,255,255,.8); color:#fff;}.partner-cta .btn-ghost:hover{background:#fff; color:var(--plum);}
  @media (max-width:880px){.partners-hero{grid-template-columns:1fr; padding-top:58px;}.partners-hero-art{grid-row:1; width:min(100%,290px);}.sponsor-tiers{grid-template-columns:1fr;}.sponsor-tier{min-height:0;}.partner-cta{flex-direction:column; align-items:flex-start;}.partner-cta .hero-actions{margin-top:0;}}
  @media (max-width:560px){.partner-grid{grid-template-columns:1fr;}.partners-hero{padding-bottom:40px;}.partner-card{min-height:0;}.partners-hero-art{width:240px;}.partner-cta{padding:28px;}}
