:root{
  --pink:#cd2d5a;
  --pink-2:#ef2f73;
  --ink:#121217;
  --muted:#62626d;
  --line:#ececf2;
  --bg:#fff8fb;
  --card:#ffffff;
  --soft:#fff0f5;
  --shadow:0 24px 80px rgba(205,45,90,.16);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;line-height:1.55}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(1120px,calc(100% - 40px));margin:0 auto}.nav{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.84);backdrop-filter:blur(18px);border-bottom:1px solid rgba(236,236,242,.7)}.nav-inner{height:72px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:12px;font-weight:800}.brand img{height:38px;width:auto}.nav-links{display:flex;align-items:center;gap:22px;color:#3d3d46;font-size:14px}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:12px 18px;font-weight:800;border:1px solid transparent;transition:.2s ease}.btn-primary{background:linear-gradient(135deg,var(--pink),var(--pink-2));color:#fff;box-shadow:0 14px 30px rgba(205,45,90,.25)}.btn-secondary{background:#fff;color:var(--pink);border-color:#ffd1dd}.btn-dark{background:#121217;color:#fff}.hero{position:relative;overflow:hidden;background:radial-gradient(circle at 80% 0%,#ffe0ea 0,#fff 34%,#fff 100%);padding:78px 0 92px}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:42px;align-items:center}.eyebrow{display:inline-flex;gap:8px;align-items:center;background:var(--soft);color:var(--pink);border:1px solid #ffd4df;padding:7px 12px;border-radius:999px;font-size:13px;font-weight:800}.hero-logo{width:360px;margin:24px 0 20px}.hero h1{font-size:clamp(44px,6vw,78px);line-height:.96;margin:0 0 22px;letter-spacing:-.06em}.hero p{font-size:20px;color:var(--muted);max-width:620px;margin:0 0 28px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.trust-row{display:flex;gap:18px;flex-wrap:wrap;margin-top:28px;color:#70707a;font-size:14px}.trust-row span{display:flex;gap:7px;align-items:center}.phone-stage{position:relative;min-height:560px}.phone{position:absolute;filter:drop-shadow(0 30px 34px rgba(20,20,28,.18));width:260px}.phone.one{right:210px;top:24px}.phone.two{right:18px;top:78px}.blob{position:absolute;border-radius:44px;background:linear-gradient(135deg,#fff1f6,#fff);box-shadow:var(--shadow);width:420px;height:420px;right:20px;top:72px;z-index:-1}.section{padding:84px 0}.section-soft{background:linear-gradient(180deg,#fff8fb,#fff)}.section-title{max-width:780px;margin:0 auto 42px;text-align:center}.section-title h2{font-size:clamp(32px,4vw,52px);line-height:1.04;letter-spacing:-.045em;margin:0 0 14px}.section-title p{color:var(--muted);font-size:18px;margin:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:var(--card);border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:0 12px 42px rgba(18,18,23,.05)}.icon{width:48px;height:48px;border-radius:16px;background:var(--soft);display:grid;place-items:center;color:var(--pink);font-size:24px;margin-bottom:18px}.card h3{margin:0 0 10px;font-size:21px}.card p{margin:0;color:var(--muted)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.step-number{width:34px;height:34px;background:var(--pink);color:#fff;border-radius:50%;display:grid;place-items:center;font-weight:900;margin-bottom:18px}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center}.feature-list{display:grid;gap:14px}.feature-item{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:20px;padding:16px}.check{color:var(--pink);font-weight:900}.badges{display:flex;gap:20px;align-items:center;justify-content:center;flex-wrap:wrap}.badge-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:20px;min-height:148px;display:grid;place-items:center;box-shadow:0 12px 42px rgba(18,18,23,.05)}.badge-card img{max-height:96px;max-width:190px}.footer{background:#121217;color:#fff;padding:48px 0}.footer-grid{display:grid;grid-template-columns:1.3fr .7fr .7fr;gap:32px}.footer img{height:44px;width:auto;margin-bottom:16px;filter:brightness(0) invert(1)}.footer p,.footer a{color:#c9c9d2}.footer h4{margin:0 0 12px}.footer a{display:block;margin:7px 0}.page-hero{background:linear-gradient(180deg,#fff0f5,#fff);padding:72px 0;text-align:center}.page-hero h1{font-size:clamp(38px,5vw,64px);line-height:1;letter-spacing:-.05em;margin:0 0 16px}.page-hero p{max-width:760px;margin:0 auto;color:var(--muted);font-size:18px}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.info-row{display:grid;grid-template-columns:160px 1fr;gap:16px;border-bottom:1px solid var(--line);padding:14px 0}.info-row strong{color:#3c3c45}.list{margin:0;padding-left:18px;color:var(--muted)}.app-cta{background:linear-gradient(135deg,var(--pink),var(--pink-2));color:#fff;border-radius:36px;padding:48px;display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:center;overflow:hidden}.app-cta p{color:#ffe6ee}.store-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.store{background:#111;border-radius:14px;color:#fff;padding:12px 18px;line-height:1.1;font-weight:800}.store small{display:block;font-size:11px;opacity:.78;font-weight:600}.launch-card{text-align:center;max-width:760px;margin:0 auto}.pill-list{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:24px}.pill{border:1px solid #ffd0dc;color:var(--pink);background:#fff;border-radius:999px;padding:9px 13px;font-weight:800;font-size:14px}@media(max-width:900px){.nav-links{display:none}.hero-grid,.feature-grid,.app-cta,.footer-grid,.info-grid{grid-template-columns:1fr}.hero{padding-top:44px}.phone-stage{min-height:460px}.phone{width:210px}.phone.one{left:10%;right:auto}.phone.two{right:8%;}.cards,.steps{grid-template-columns:1fr}.app-cta{padding:32px}.info-row{grid-template-columns:1fr;gap:4px}.hero-logo{width:280px}.section{padding:64px 0}}@media(max-width:520px){.container{width:min(100% - 28px,1120px)}.phone-stage{min-height:380px}.phone{width:175px}.phone.one{left:0}.phone.two{right:0}.hero p{font-size:17px}.trust-row{font-size:13px}.card{padding:22px}.section-title h2{font-size:34px}}

.brand span{color:var(--pink);}
.app-download-row{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-top:24px}
.store-badge{display:inline-flex;align-items:center;justify-content:center;background:#050505;border-radius:14px;overflow:hidden;min-height:58px;box-shadow:0 12px 30px rgba(0,0,0,.18)}
.store-badge img{height:58px;width:auto;display:block}
.store-badge.apple img{height:58px}
.sponsor-hero-card{text-align:center;background:linear-gradient(135deg,#fff6f9,#fff);}
.sponsor-logo-circle{width:132px;height:132px;border-radius:999px;border:5px solid var(--pink);outline:4px solid #fff;background:#000;display:grid;place-items:center;margin:18px auto;overflow:hidden;box-shadow:0 18px 42px rgba(205,45,90,.20)}
.sponsor-logo-circle img{width:100%;height:100%;object-fit:cover}
.faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.faq-item h3{font-size:17px;margin:0 0 8px}.faq-item p{color:var(--muted);margin:0}
.sponsor-pill-row{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:12px}
@media(max-width:900px){.faq-grid{grid-template-columns:1fr}.app-download-row{justify-content:center}.store-badge img{height:48px}.store-badge.apple img{height:60px}}


/* v6.0 single iPhone composite graphic */
.iphone-graphic{position:absolute;right:0;top:50%;transform:translateY(-50%);width:min(560px,100%);max-width:none;filter:drop-shadow(0 30px 34px rgba(20,20,28,.18));z-index:1}
.app-phone-stage{position:relative;min-height:420px;display:flex;align-items:center;justify-content:center}
.app-iphone-graphic{position:relative;right:auto;top:auto;transform:none;width:min(560px,100%)}
@media(max-width:900px){.phone-stage{min-height:440px}.iphone-graphic{left:50%;right:auto;top:50%;transform:translate(-50%,-50%);width:min(520px,112%)}.app-phone-stage{min-height:360px}.app-iphone-graphic{left:auto;transform:none;width:min(520px,112%)}}
@media(max-width:520px){.phone-stage{min-height:330px}.iphone-graphic{width:min(430px,118%)}.app-phone-stage{min-height:300px}.app-iphone-graphic{width:min(430px,118%)}}


/* v6.1 mobile responsive optimization
   Keeps desktop-style text/asset placement on mobile while scaling typography,
   spacing, and composite phone art for common phone widths. */
:root{--mobile-gutter:20px}

@media(max-width:900px){
  body{overflow-x:hidden}
  .container{width:min(1120px,calc(100% - 32px))}
  .nav-inner{height:64px}
  .brand img{height:34px}
  .brand span{font-size:14px;line-height:1.15}

  /* Preserve desktop left-text / right-asset composition on mobile. */
  .hero-grid{
    grid-template-columns:minmax(0,1.02fr) minmax(118px,.72fr);
    gap:clamp(8px,3vw,22px);
    align-items:center;
  }
  .hero{padding:42px 0 54px;background:radial-gradient(circle at 92% 10%,#ffe0ea 0,#fff 44%,#fff 100%)}
  .hero-logo{width:clamp(150px,42vw,280px);margin:16px 0 14px}
  .hero h1{font-size:clamp(32px,10.4vw,54px);letter-spacing:-.055em;margin-bottom:14px}
  .hero p{font-size:clamp(15px,3.8vw,18px);max-width:34em;margin-bottom:18px}
  .hero-actions{gap:9px}.hero-actions .btn{padding:10px 14px;font-size:14px}
  .trust-row{gap:10px 14px;margin-top:18px}
  .phone-stage{min-height:clamp(300px,74vw,460px);overflow:visible}
  .blob{width:clamp(190px,52vw,320px);height:clamp(190px,52vw,320px);right:-18px;top:50%;transform:translateY(-50%);border-radius:34px}
  .iphone-graphic{left:50%;right:auto;top:50%;transform:translate(-50%,-50%);width:clamp(210px,65vw,500px);max-width:150%}

  .app-cta{
    grid-template-columns:minmax(0,1.08fr) minmax(118px,.72fr);
    gap:clamp(10px,3vw,22px);
    padding:clamp(22px,5vw,34px);
    border-radius:30px;
  }
  .app-cta h2{font-size:clamp(27px,7vw,44px) !important}
  .app-cta p{font-size:clamp(14px,3.6vw,17px)}
  .app-phone-stage{min-height:clamp(250px,62vw,380px);overflow:visible}
  .app-iphone-graphic{width:clamp(210px,62vw,460px);max-width:150%}
  .app-download-row{justify-content:flex-start;gap:10px}.store-badge img{height:44px}.store-badge.apple img{height:54px}
}

@media(max-width:700px){
  .section{padding:54px 0}.page-hero{padding:54px 0}
  .hero-grid{grid-template-columns:minmax(0,1fr) minmax(112px,.58fr)}
  .app-cta{grid-template-columns:minmax(0,1fr) minmax(112px,.58fr)}
  .phone-stage{min-height:clamp(270px,72vw,390px)}
  .app-phone-stage{min-height:clamp(230px,58vw,330px)}
}

@media(max-width:520px){
  .container{width:min(100% - 24px,1120px)}
  .hero{padding:34px 0 44px}
  .hero-grid{grid-template-columns:minmax(0,.98fr) minmax(96px,.52fr);gap:6px}
  .hero-logo{width:clamp(130px,40vw,210px);margin:12px 0 12px}
  .eyebrow{font-size:12px;padding:6px 10px}
  .hero h1{font-size:clamp(29px,10vw,42px);line-height:.98}
  .hero p{font-size:clamp(14px,3.7vw,16px);line-height:1.45}
  .hero-actions .btn{padding:9px 12px;font-size:13px}
  .trust-row{font-size:12px;line-height:1.3}
  .phone-stage{min-height:clamp(235px,70vw,335px)}
  .iphone-graphic{width:clamp(200px,69vw,350px)}

  .app-cta{grid-template-columns:minmax(0,.98fr) minmax(96px,.52fr);gap:8px;padding:22px;border-radius:26px}
  .app-cta img[alt="Givee logo"]{height:48px !important;margin-bottom:12px !important}
  .app-cta h2{font-size:clamp(25px,7.4vw,35px) !important;margin-bottom:12px !important}
  .app-download-row{gap:8px}.store-badge img{height:38px}.store-badge.apple img{height:47px}
  .app-phone-stage{min-height:clamp(210px,58vw,285px)}
  .app-iphone-graphic{width:clamp(190px,66vw,330px)}
}

/* Extra tuning for narrow common devices: iPhone SE/12 mini and 360px Android widths. */
@media(max-width:390px){
  .container{width:min(100% - 20px,1120px)}
  .brand span{font-size:13px}.brand img{height:30px}
  .hero-grid{grid-template-columns:minmax(0,1fr) minmax(86px,.46fr);gap:4px}
  .hero h1{font-size:clamp(27px,9.2vw,36px)}
  .hero p{font-size:13.5px}
  .hero-actions .btn{font-size:12.5px;padding:8px 10px}
  .phone-stage{min-height:220px}.iphone-graphic{width:clamp(178px,66vw,285px)}
  .app-cta{grid-template-columns:minmax(0,1fr) minmax(86px,.46fr);padding:18px}
  .app-cta h2{font-size:clamp(22px,7.1vw,29px) !important}
  .app-cta p{font-size:13.5px;line-height:1.42}.app-phone-stage{min-height:190px}.app-iphone-graphic{width:clamp(178px,64vw,280px)}
}

@media(max-width:340px){
  .hero-grid,.app-cta{grid-template-columns:minmax(0,1fr) minmax(74px,.42fr)}
  .hero h1{font-size:26px}.hero p,.app-cta p{font-size:13px}
  .hero-actions{display:grid;grid-template-columns:1fr}.hero-actions .btn{width:100%}
  .phone-stage{min-height:200px}.iphone-graphic{width:210px}
  .app-phone-stage{min-height:170px}.app-iphone-graphic{width:205px}
}


/* v6.2 mobile/header refinements */
.mobile-nav{display:none;align-items:center;gap:8px;margin-left:auto;min-width:0}
.mobile-launch{white-space:nowrap;padding:10px 14px;font-size:13px}
.mobile-menu{position:relative;display:block}
.mobile-menu summary{list-style:none;cursor:pointer;border:1px solid #ffd1dd;background:#fff;color:var(--pink);border-radius:999px;padding:9px 13px;font-weight:900;font-size:13px;line-height:1}
.mobile-menu summary::-webkit-details-marker{display:none}
.mobile-menu summary::after{content:"▾";font-size:10px;margin-left:6px}
.mobile-menu[open] summary::after{content:"▴"}
.mobile-menu-panel{position:absolute;right:0;top:calc(100% + 10px);min-width:210px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:10px;box-shadow:0 18px 50px rgba(18,18,23,.14);display:grid;gap:4px;z-index:100}
.mobile-menu-panel a{padding:10px 12px;border-radius:12px;color:#3d3d46;font-weight:800;font-size:14px}
.mobile-menu-panel a:hover{background:var(--soft);color:var(--pink)}

@media(max-width:900px){
  .nav-links{display:none!important}
  .mobile-nav{display:flex}
  .nav-inner{gap:8px;overflow:visible}
  .brand{min-width:0;gap:8px;flex:1 1 auto}
  .brand span{white-space:normal;max-width:150px}

  /* 25% smaller mobile iPhone composites on home and app pages. */
  .iphone-graphic{width:clamp(158px,48.75vw,375px)}
  .app-iphone-graphic{width:clamp(158px,46.5vw,345px)}
  .phone-stage{min-height:clamp(260px,62vw,390px)}
  .app-phone-stage{min-height:clamp(220px,52vw,320px)}

  /* Home-page CTAs scaled up for mobile tap targets and visibility. */
  .home-page .hero-actions .btn{font-size:clamp(17px,4.5vw,21px);padding:clamp(14px,3.4vw,15px) clamp(18px,4.7vw,21px);min-height:54px;line-height:1.12;text-align:center;max-width:100%;white-space:normal}
  .home-page .feature-grid .hero-actions .btn{font-size:clamp(16px,4.2vw,20px);padding:clamp(14px,3.2vw,15px) clamp(18px,4.4vw,21px)}
}
@media(max-width:520px){
  .brand img{height:30px}.brand span{font-size:12.5px;max-width:112px}
  .mobile-launch{font-size:12px;padding:9px 11px}
  .mobile-menu summary{font-size:12px;padding:9px 11px}
  .iphone-graphic{width:clamp(150px,51.75vw,263px)}
  .app-iphone-graphic{width:clamp(143px,49.5vw,248px)}
  .phone-stage{min-height:clamp(205px,56vw,285px)}
  .app-phone-stage{min-height:clamp(185px,48vw,245px)}
  .home-page .hero-actions{gap:10px}
}
@media(max-width:390px){
  .container{width:min(100% - 18px,1120px)}
  .nav-inner{height:60px}
  .brand span{display:none}
  .mobile-launch{font-size:11.5px;padding:9px 10px}
  .mobile-menu summary{font-size:11.5px;padding:9px 10px}
  .iphone-graphic{width:clamp(134px,49.5vw,214px)}
  .app-iphone-graphic{width:clamp(134px,48vw,210px)}
  .phone-stage{min-height:185px}.app-phone-stage{min-height:165px}
  .home-page .hero-actions{display:grid;grid-template-columns:1fr;align-items:stretch}
  .home-page .hero-actions .btn{width:100%;font-size:17px;padding:14px 14px}
}
@media(max-width:340px){
  .iphone-graphic{width:158px}.app-iphone-graphic{width:154px}
  .mobile-launch{font-size:11px;padding:8px 9px}
  .mobile-menu summary{font-size:11px;padding:8px 9px}
}

/* v6.3 mobile CTA revert
   Reverts the v6.2 50% mobile scale-up for home-page buttons while keeping all other v6.2 mobile/header/stamp updates. */
@media(max-width:900px){
  .home-page .hero-actions .btn,
  .home-page .feature-grid .hero-actions .btn{
    font-size:14px;
    padding:10px 14px;
    min-height:0;
    line-height:inherit;
    text-align:center;
    white-space:normal;
  }
}
@media(max-width:520px){
  .home-page .hero-actions .btn,
  .home-page .feature-grid .hero-actions .btn{
    font-size:13px;
    padding:9px 12px;
    width:auto;
  }
}
@media(max-width:390px){
  .home-page .hero-actions{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
  }
  .home-page .hero-actions .btn,
  .home-page .feature-grid .hero-actions .btn{
    font-size:12.5px;
    padding:8px 10px;
    width:auto;
  }
}
@media(max-width:340px){
  .home-page .hero-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  .home-page .hero-actions .btn,
  .home-page .feature-grid .hero-actions .btn{
    width:100%;
  }
}

/* v6.4 mobile-only /app refinements
   Keeps app store badges side-by-side above Launch Web App and prevents phone art/text overlap. */
@media(max-width:900px){
  .app-page .app-cta{
    grid-template-columns:minmax(0,1.18fr) minmax(104px,.58fr);
    gap:clamp(8px,2.5vw,16px);
    align-items:center;
  }
  .app-page .app-cta h2{
    font-size:clamp(26px,6.4vw,40px)!important;
    line-height:1.02!important;
    max-width:100%;
  }
  .app-page .app-cta p{
    font-size:clamp(14px,3.4vw,16px);
    line-height:1.42;
    margin-bottom:0;
  }
  .app-page .app-title-main,
  .app-page .app-title-impact{
    display:block;
    white-space:normal;
  }
  .app-page .app-download-row{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 112px));
    gap:8px;
    align-items:center;
    justify-content:start;
    margin-top:16px;
  }
  .app-page .store-badge{
    width:112px;
    height:38px;
    min-height:0;
    border-radius:9px;
    padding:0;
  }
  .app-page .store-badge img,
  .app-page .store-badge.apple img{
    width:100%;
    height:100%;
    object-fit:contain;
  }
  .app-page .app-download-row .btn{
    grid-column:1 / -1;
    justify-self:start;
    min-height:0;
    padding:10px 16px;
    font-size:14px;
  }
  .app-page .app-iphone-graphic{
    width:clamp(128px,38vw,285px);
    max-width:125%;
  }
  .app-page .app-phone-stage{
    min-height:clamp(190px,45vw,285px);
  }
}
@media(max-width:520px){
  .app-page .app-cta{
    grid-template-columns:minmax(0,1.24fr) minmax(82px,.52fr);
    padding:20px;
    gap:8px;
  }
  .app-page .app-cta img[alt="Givee logo"]{
    height:46px!important;
    margin-bottom:12px!important;
  }
  .app-page .app-cta h2{
    font-size:clamp(23px,6.9vw,32px)!important;
    letter-spacing:-.04em!important;
    margin-bottom:10px!important;
  }
  .app-page .app-cta p{font-size:13.5px;line-height:1.35}
  .app-page .app-download-row{
    grid-template-columns:repeat(2, minmax(0, 96px));
    gap:7px;
    margin-top:12px;
  }
  .app-page .store-badge{width:96px;height:33px;border-radius:8px}
  .app-page .app-download-row .btn{font-size:12.5px;padding:8px 12px}
  .app-page .app-iphone-graphic{width:clamp(105px,34vw,176px)}
  .app-page .app-phone-stage{min-height:clamp(145px,40vw,210px)}
}
@media(max-width:390px){
  .app-page .app-cta{grid-template-columns:minmax(0,1.28fr) minmax(70px,.45fr);padding:18px}
  .app-page .app-cta h2{font-size:22px!important}
  .app-page .app-cta p{font-size:12.75px}
  .app-page .app-download-row{grid-template-columns:repeat(2, minmax(0, 86px))}
  .app-page .store-badge{width:86px;height:30px}
  .app-page .app-iphone-graphic{width:98px}
  .app-page .app-phone-stage{min-height:130px}
}

/* v6.4.7 mobile-only overlap refinements
   Keeps desktop unchanged while tightening mobile text space and reducing phone art intrusion. */
@media(max-width:900px){
  .home-page .iphone-graphic{
    width:clamp(134px,41.4vw,319px);
  }
  .home-page .hero p{
    max-width:27ch;
    padding-right:10px;
  }
  .app-page .app-cta p{
    max-width:31ch;
    padding-right:8px;
  }
  .app-page .app-iphone-graphic{
    width:clamp(120px,35vw,260px);
  }
}
@media(max-width:520px){
  .home-page .iphone-graphic{
    width:clamp(128px,44vw,224px);
  }
  .home-page .hero p{
    max-width:24ch;
    padding-right:12px;
  }
  .app-page .app-cta p{
    max-width:25ch;
    padding-right:8px;
  }
  .app-page .app-iphone-graphic{
    width:clamp(95px,31vw,160px);
  }
}
@media(max-width:390px){
  .home-page .iphone-graphic{
    width:clamp(114px,42.1vw,182px);
  }
  .home-page .hero p{
    max-width:23ch;
    padding-right:10px;
  }
  .app-page .app-iphone-graphic{
    width:88px;
  }
}

.board-card{text-align:center;background:linear-gradient(135deg,#fff6f9,#fff)}
.board-photo-circle{width:132px;height:132px;border-radius:999px;border:5px solid var(--pink);outline:4px solid #fff;background:#fff;display:grid;place-items:center;margin:0 auto 18px;overflow:hidden;box-shadow:0 18px 42px rgba(205,45,90,.20)}
.board-photo-circle img{width:100%;height:100%;object-fit:cover}
.board-card p a{display:inline;color:var(--pink)}

.impact-program-card{max-width:940px;margin:0 auto}
.impact-program-card p{color:var(--muted);font-size:18px;line-height:1.65}


/* v7.1 impact metric trackers */
.impact-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:34px;align-items:stretch}
.impact-metric{display:grid;justify-items:center;gap:16px;text-align:center;padding:20px 16px;border-radius:26px;background:linear-gradient(180deg,#fff,#fff8fb);border:1px solid #ffd6e0;box-shadow:0 14px 36px rgba(205,45,90,.10)}
.impact-ring{width:178px;height:178px;border-radius:999px;background:conic-gradient(var(--pink) 0 var(--progress,0%),#ffe6ee var(--progress,0%) 100%);display:grid;place-items:center;position:relative;isolation:isolate;animation:impactRingIn 1.05s cubic-bezier(.22,1,.36,1) both}
.impact-ring::before{content:"";position:absolute;inset:21px;border-radius:999px;background:#fff;z-index:-1;box-shadow:inset 0 0 0 1px rgba(205,45,90,.08)}
.impact-number{color:var(--pink);font-size:44px;line-height:1;font-weight:900;letter-spacing:-.05em}
.impact-metric-label strong{display:block;color:var(--ink);font-size:17px;margin-bottom:3px}
.impact-metric-label span{display:block;color:var(--muted);font-size:14px;line-height:1.35}.impact-metric-label em{display:block;color:var(--ink);font-size:14px;line-height:1.35;font-style:normal;font-weight:800;margin-top:10px}.impact-metric-label em a{color:var(--pink);text-decoration:underline;text-underline-offset:3px}
@keyframes impactRingIn{from{opacity:0;transform:scale(.72) rotate(-34deg)}to{opacity:1;transform:scale(1) rotate(0)}}
@media(max-width:700px){.impact-metrics{grid-template-columns:1fr;gap:18px}.impact-ring{width:156px;height:156px}.impact-ring::before{inset:18px}.impact-number{font-size:38px}}
@media(max-width:520px){.impact-program-card p{font-size:16px}.impact-metric{padding:18px 14px}.impact-ring{width:142px;height:142px}.impact-number{font-size:34px}}
@media(prefers-reduced-motion:reduce){.impact-ring{animation:none}}

/* v7.2 impact program switcher and duplicated program cards */
.program-switcher-wrap{max-width:940px;margin:0 auto 18px;display:flex;justify-content:flex-start}
.program-switcher{position:relative;z-index:5}
.program-switcher summary{list-style:none;cursor:pointer;border:1px solid #ffd0dc;border-radius:999px;background:#fff;color:var(--pink);font-weight:900;padding:12px 18px;box-shadow:0 12px 30px rgba(205,45,90,.10)}
.program-switcher summary::-webkit-details-marker{display:none}
.program-switcher summary::after{content:"▾";font-size:12px;margin-left:8px}
.program-options{position:absolute;top:calc(100% + 10px);left:0;display:grid;gap:8px;min-width:min(420px,calc(100vw - 40px));background:#fff;border:1px solid var(--line);border-radius:22px;padding:10px;box-shadow:0 18px 48px rgba(18,18,23,.14)}
.program-option{appearance:none;border:1px solid transparent;background:#fff;color:var(--ink);border-radius:16px;padding:12px 14px;text-align:left;font-weight:800;cursor:pointer;font-family:inherit}
.program-option:hover,.program-option.active{background:var(--soft);border-color:#ffd0dc;color:var(--pink)}
.impact-programs{max-width:940px;margin:0 auto}.impact-program-card[hidden]{display:none}.impact-program-card{animation:impactProgramFade .28s ease both}.impact-metric h3{min-height:44px;margin:0;color:var(--ink);font-size:17px;line-height:1.25;text-align:center}.impact-metric-label strong{display:none}
@keyframes impactProgramFade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:700px){.program-switcher-wrap{justify-content:center}.program-options{left:50%;transform:translateX(-50%)}.impact-metric h3{min-height:auto;font-size:16px}}

/* v7.3 donation metrics breakdown */
.metrics-breakdown{max-width:940px;margin:0 auto;display:grid;gap:16px}
.metric-category{background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:0 12px 42px rgba(18,18,23,.05);overflow:hidden}
.metric-category summary{list-style:none;display:grid;grid-template-columns:minmax(130px,.45fr) 1fr auto;gap:18px;align-items:center;cursor:pointer;padding:22px 24px;font-weight:900;color:var(--ink)}
.metric-category summary::-webkit-details-marker{display:none}
.metric-category summary::after{content:"+";color:var(--pink);font-size:22px;line-height:1}
.metric-category[open] summary::after{content:"−"}
.metric-category-title{font-size:20px;letter-spacing:-.025em}
.metric-category-count{color:var(--muted);font-size:14px;white-space:nowrap}
.metric-progress{height:12px;background:#ffe6ee;border-radius:999px;overflow:hidden;position:relative;box-shadow:inset 0 0 0 1px rgba(205,45,90,.10)}
.metric-progress span{display:block;height:100%;width:var(--metric-progress,0%);background:var(--pink);border-radius:999px;animation:metricBarGrow 1.1s cubic-bezier(.22,1,.36,1) both}
.metric-category-body{padding:0 24px 24px;color:var(--muted);font-size:17px;line-height:1.55}
.metric-category-body p{margin:0 0 10px;color:var(--ink);font-weight:800}
@keyframes metricBarGrow{from{width:0}to{width:var(--metric-progress,0%)}}
@media(max-width:720px){.metric-category summary{grid-template-columns:1fr;gap:10px}.metric-category summary::after{position:absolute;right:22px}.metric-category{position:relative}.metric-category-count{white-space:normal}}
@media(prefers-reduced-motion:reduce){.metric-progress span{animation:none}}

/* v7.3.7 sponsor service-area selector */
.sponsor-program-section{align-items:center}
.sponsor-filter{display:inline-flex;align-items:center;gap:12px;background:var(--soft);border:1px solid #ffd4df;border-radius:999px;padding:9px 12px 9px 16px;color:var(--pink);font-weight:900;box-shadow:0 10px 28px rgba(205,45,90,.08)}
.sponsor-filter label{font-size:15px;line-height:1;white-space:nowrap}
.sponsor-filter select{appearance:none;-webkit-appearance:none;border:0;background:#fff;color:#3d3d46;border-radius:999px;padding:10px 38px 10px 16px;font-weight:900;font-size:15px;line-height:1;cursor:pointer;box-shadow:inset 0 0 0 1px #ffd4df;background-image:linear-gradient(45deg,transparent 50%,var(--pink) 50%),linear-gradient(135deg,var(--pink) 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 12px) 50%;background-size:6px 6px,6px 6px;background-repeat:no-repeat}
.sponsor-card-stack{display:grid}.sponsor-area-card[hidden]{display:none!important}.sponsor-card-button{margin:22px auto 0}.sponsor-logo-white{background:#fff}.sponsor-logo-white img{width:68%;height:68%;object-fit:contain}
@media(max-width:900px){.sponsor-program-section{gap:24px}.sponsor-filter{width:100%;justify-content:space-between}.sponsor-filter select{min-width:155px}}

/* v7.3.8 sponsor carousel */
.sponsor-area-panel[hidden]{display:none!important}
.sponsor-carousel-indicators{display:flex;justify-content:center;gap:8px;margin:0 0 12px}
.sponsor-carousel-indicators span{width:9px;height:9px;border-radius:999px;background:#ffd4df;box-shadow:inset 0 0 0 1px rgba(205,45,90,.18);cursor:pointer;transition:.2s ease}
.sponsor-carousel-indicators span.active{width:22px;background:var(--pink)}
.sponsor-carousel{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:4px 2px 18px;direction:ltr;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.sponsor-carousel-card{flex:0 0 100%;scroll-snap-align:start}
.sponsor-town-pills{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:14px}
.sponsor-town-pills span{border:1px solid var(--pink);color:#fff;background:var(--pink);border-radius:999px;padding:7px 13px;font-weight:900;font-size:13px;line-height:1}
@media(max-width:900px){.sponsor-carousel{padding-bottom:14px}.sponsor-carousel-card{flex-basis:100%}}

.sponsor-title-link{color:var(--pink);text-decoration:none}
.sponsor-title-link:hover{text-decoration:underline}
