:root{--accent:#6b78d6;--blue:#82aeb5;--ink:#242a31;--text:#3f4650;--muted:#7b828b;--line:#e5e7e8;--soft:#f4f5f4;--radius:14px}body{color:var(--text);font-size:16px;line-height:1.7}h1,h2,h3{color:var(--ink)}h1{font-weight:500;letter-spacing:-2.5px}h2{font-weight:500;letter-spacing:-1.3px}a{color:#5c69be}.container{width:min(1240px,calc(100% - 72px))}.section{padding-block:82px}.eyebrow{letter-spacing:1.7px;font-size:11px;color:#747fba;font-weight:500}.icon{width:21px;height:21px;flex:0 0 auto;display:inline-block;vertical-align:middle}.brand-icon{fill:currentColor;stroke:none}.button{white-space:nowrap;max-width:100%;border-radius:7px;padding:14px 24px;min-height:50px;font-size:15px;gap:15px;line-height:1.35;background:#333e62}.button:hover{background:#4b5883}.button .icon{width:19px;height:19px}.button-white{background:#fff;color:#343e62}.button-white:hover{background:#e9edff}.modern-header{height:84px;box-shadow:none;border-bottom:1px solid #eceeee;background:#fff}.header-inner{width:min(1350px,calc(100% - 56px));margin:auto;display:flex;align-items:center;justify-content:space-between;gap:30px;height:100%}.modern-header .brand{padding:0;margin:0;gap:12px;flex-shrink:0;text-decoration:none}.modern-header .brand img{width:52px;height:52px;object-fit:contain}.brand-name{font:500 24px/1 Jost,Arial,sans-serif;letter-spacing:-.6px;color:#29323c}.brand-name small{display:block;font-size:11px;font-weight:400;letter-spacing:.4px;color:#89909a;margin-top:7px}.desktop-nav{display:flex;gap:29px;margin-left:auto;align-items:center}.desktop-nav a{font:400 14px Jost,Arial,sans-serif;text-decoration:none;color:#5c626b;white-space:nowrap}.desktop-nav a:hover{color:#6674c8}.header-buttons{display:flex;gap:10px;align-items:center}.header-join,.header-support{font:500 13px/1.2 Jost,Arial,sans-serif;min-height:42px;padding:11px 16px;border-radius:6px;text-decoration:none;display:inline-flex;gap:10px;align-items:center;justify-content:center;white-space:nowrap}.header-join{color:#586172;border:1px solid #e1e4e8}.header-support{color:#fff;background:#333e62}.header-support:hover{background:#4b5883}.header-support .icon{height:15px;width:15px}.modern-header .menu{min-width:0;background:none;color:#4d5665;margin-left:4px}.modern-header .menu summary{height:42px;gap:7px;padding:8px;line-height:1;list-style:none}.menu summary>.icon:first-child{width:21px}.menu summary>.icon:last-child{width:14px;height:14px;transition:transform .2s}.menu[open] summary>.icon:last-child{transform:rotate(180deg)}.menu-label{display:none}.modern-header .menu nav{top:55px;right:0;width:290px;border:1px solid #e5e8ec;border-radius:10px;padding:12px;box-shadow:0 16px 40px #25314717}.modern-header .menu nav a{font-size:15px;padding:9px 12px;border-radius:5px}.modern-header .menu .social{padding:14px 12px 8px;border-top:1px solid var(--line);margin-top:7px}.social{gap:9px}.social a{background:transparent;border:1px solid #e0e5ec;color:#69758d;width:36px;height:36px}.social a:hover{background:#eef1fa;color:#495b9c}.social .icon{width:16px;height:16px}.modern-hero{display:grid;grid-template-columns:1fr .9fr;gap:90px;align-items:center;padding-top:53px;padding-bottom:60px}.modern-hero .eyebrow{display:flex;align-items:center;gap:9px;font-size:10px;letter-spacing:1.2px;margin-bottom:27px}.location-dot{width:6px;height:6px;border-radius:50%;background:#8aa9a2}.modern-hero h1{font-size:clamp(49px,4.7vw,73px);line-height:1.075;letter-spacing:-2.8px;margin-bottom:28px}.modern-hero h1 span{color:#7a87ca}.hero-description{max-width:440px;font-size:16px;line-height:1.9;color:#7b818b;margin-bottom:30px}.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.hero-contact{font:400 14px Jost,Arial,sans-serif;text-decoration:none;white-space:nowrap;color:#596375;display:flex;align-items:center;gap:7px}.hero-contact .icon{width:16px;height:16px}.hero-caption{display:flex;gap:17px;align-items:center;margin-top:42px}.small-rule{height:1px;width:39px;background:#b7becb}.hero-caption p{font-size:11px;line-height:1.7;margin:0;color:#989ea7}.hero-portrait{position:relative;border-radius:10px 10px 110px 10px;overflow:hidden;background:#f0eeeb;height:555px}.hero-portrait>img{width:100%;height:100%;object-fit:cover;object-position:center 32%}.portrait-caption{position:absolute;left:25px;bottom:27px;background:#fffffff0;backdrop-filter:blur(10px);padding:13px 19px;border-radius:5px;display:grid}.portrait-caption>span{font-size:10px;color:#89909b}.portrait-caption>strong{font:500 16px Jost,Arial,sans-serif;color:#3e4551}.impact-strip{padding:34px 0;border-top:0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:210px 1fr;gap:45px;align-items:center}.impact-intro .eyebrow{margin-bottom:9px}.impact-intro h2{font-size:22px;letter-spacing:-.5px;line-height:1.2;margin:0}.impact-strip .stats{margin:0;gap:18px}.stats div{border:0;text-align:left}.stats strong{font:500 34px/1.1 Jost,Arial,sans-serif;color:#464f63;letter-spacing:-1px;font-variant-numeric:tabular-nums}.stats span{font-size:12px;color:#9096a0;margin-top:9px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:34px}.section-heading h2{font-size:42px;margin:0}.section-heading .eyebrow{margin-bottom:13px}.section-heading>p{color:#8b919a;font-size:13px;line-height:1.8;margin:0 0 3px}.project-filters{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:30px}.project-filters button{background:transparent;border:1px solid #e8eaed;border-radius:30px;font:400 13px Jost,Arial,sans-serif;padding:8px 19px;white-space:nowrap;color:#7b828f;display:inline-flex;align-items:center;gap:9px}.project-filters button.active{background:#343f62;color:#fff;border-color:#343f62}.project-filters span{font-size:10px;opacity:.65}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px 24px}.project-card{border:1px solid #e8eaed;border-radius:10px;overflow:hidden;display:flex;flex-direction:column;background:#fff}.project-card-image{display:block;height:228px;overflow:hidden;position:relative;background:#eee}.project-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.project-card-image:hover img{transform:scale(1.035)}.project-card-copy{padding:23px 25px 25px;display:flex;flex-direction:column;flex:1}.project-card h3{font-size:25px;margin:0 0 14px;letter-spacing:-.5px;text-transform:none}.project-excerpt{font-size:13px;color:#858d98;line-height:1.8;margin-bottom:13px}.project-detail{margin-bottom:24px}.project-detail summary{font-size:12px;color:#7a8496;display:flex;align-items:center;gap:5px;list-style:none;width:fit-content}.project-detail summary::-webkit-details-marker{display:none}.project-detail summary .icon{width:13px;height:13px}.project-detail[open] summary .icon{transform:rotate(180deg)}.project-detail p{font-size:13px;line-height:1.85;color:#687384;margin:16px 0 0}.project-link{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #edf0f3;padding-top:16px;margin-top:auto;text-decoration:none;font:500 13px Jost,Arial,sans-serif;color:#586985}.project-link .icon{width:17px;height:17px}.help-strip{background:#f1f4f3;border-radius:10px;padding:39px 45px;display:flex;justify-content:space-between;align-items:center;gap:30px}.help-strip .eyebrow{margin-bottom:12px}.help-strip h2{font-size:32px;margin:0}.help-strip .button{background:#4f7768}.help-strip .button:hover{background:#3c6255}.budget-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:37px}.budget-heading h2{font-size:38px;margin-bottom:0}.budget-heading>p{font-size:12px;line-height:1.8;color:#8b929e;text-align:right;margin:0}.budget-heading strong{font:500 26px Jost,Arial,sans-serif;color:#495774}.budget-shares{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;text-align:center}.budget-share{padding:20px 10px}.budget-ring{width:104px;height:104px;margin:auto;position:relative}.budget-ring svg{width:100%;height:100%;transform:rotate(-90deg);overflow:visible}.budget-ring circle{fill:none;stroke-width:5}.ring-track{stroke:#edf0f7}.ring-progress{stroke:#8795d7;stroke-linecap:round;transition:stroke-dashoffset 1s cubic-bezier(.2,.6,.2,1)}.budget-ring strong{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font:400 27px Jost,Arial,sans-serif;color:#53627f;font-variant-numeric:tabular-nums}.budget-ring small{font-size:14px;color:#9ba5ba;margin-left:2px}.budget-share h3{font-size:15px;margin:15px 0 4px;font-weight:400;letter-spacing:0}.budget-share>p{font-size:11px;color:#9ba2af;margin-bottom:0}.modern-sponsor{margin-top:45px;background:#7785c8;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:35px;padding:47px 52px;border-radius:10px}.modern-sponsor h2{font-size:39px;color:#fff;margin-bottom:17px}.modern-sponsor .eyebrow{color:#e1e6ff}.modern-sponsor p{font-size:13px;color:#eef1ff;max-width:470px;margin-bottom:0}.volunteer-section{padding-top:0}.volunteer-grid{grid-template-columns:repeat(6,1fr);gap:20px;margin-top:0}.volunteer img{height:220px;border-radius:8px;object-position:center 22%}.volunteer h3{font-size:17px;margin:16px 0 4px;letter-spacing:-.3px}.volunteer p{font-size:11px;color:#99a0aa}.gallery-section{background:#f6f7f6}.carousel-track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;overscroll-behavior-x:contain;padding:2px 0 5px}.carousel-track::-webkit-scrollbar{display:none}.carousel-slide{flex:0 0 calc((100% - 32px)/3);scroll-snap-align:start;border:0;padding:0;border-radius:9px;overflow:hidden;background:#eceeec}.gallery-carousel .carousel-slide img{width:100%;height:270px;object-fit:cover}.carousel-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.carousel-count{font:400 13px Jost,Arial,sans-serif;color:#5c667a;font-variant-numeric:tabular-nums}.carousel-count .muted{color:#abb2be}.carousel-buttons{display:flex;gap:8px}.carousel-buttons button{border:1px solid #dfe4ea;background:transparent;width:37px;height:37px;border-radius:50%;display:grid;place-items:center;padding:0;color:#6b778c}.carousel-buttons button:hover{background:#fff;border-color:#9ca9bd}.carousel-buttons .icon{width:17px;height:17px}.partners-carousel .carousel-slide{flex-basis:calc((100% - 64px)/5);height:108px;display:grid;place-items:center;background:#fff;border:1px solid #f0f1f3}.partners-carousel .carousel-slide img{max-width:140px;max-height:77px;object-fit:contain}.partners-section{padding-block:65px}.partners-section h2{font-size:30px}.modern-footer{background:#f2f4f6;color:#414d60}.modern-footer .footer-grid{padding-block:65px;gap:140px}.footer-identity{display:flex;gap:15px;align-items:center;text-decoration:none;margin-bottom:33px}.footer-identity img{width:57px;height:57px;object-fit:contain}.footer-identity>span{font:500 25px/1 Jost,Arial,sans-serif;letter-spacing:-.7px;color:#46536b}.footer-identity small{display:block;font-size:13px;font-weight:400;letter-spacing:.4px;margin-top:7px}.modern-footer h2{font-size:33px;color:#424e63}.modern-footer p{color:#8c96a4;font-size:13px;max-width:380px}.modern-footer a{color:#687991}.modern-footer .contact-line{font-size:15px}.modern-footer .social a{color:#74829b}.modern-footer .footer-nav{grid-template-columns:1fr 1fr;gap:8px 20px;max-width:350px}.modern-footer .footer-nav a{font-size:12px}.modern-footer .footer-grid .eyebrow{font-size:10px;color:#8f9bb0}.modern-footer .footer-form h2{font-size:30px}.modern-footer .form-note{font-size:10px}.modern-footer .form-fallback{font-size:12px}.modern-footer .contact-form label{font-size:12px;font-weight:400}.modern-footer .contact-form input,.modern-footer .contact-form textarea{background:#ffffffa8;border-color:#dfe4ec;border-radius:5px;font-size:13px;padding:11px 13px}.modern-footer .form-status:not(:empty){background:#e9edf7;color:#62718a;border-left:0;border-radius:5px;font-size:11px;padding:11px 13px}.modern-footer .copyright{border-top:1px solid #dfe4eb;background:transparent;color:#98a1ae;display:flex;justify-content:space-between;font-size:10px;padding:20px 0}.floating-whatsapp{width:54px;height:54px;background:#42ad69;box-shadow:0 5px 20px #244e3420;right:23px;bottom:23px}.floating-whatsapp .icon{width:28px;height:28px;display:block;color:#fff}.lightbox-close{display:grid;place-items:center}.lightbox-close .icon{width:22px;height:22px}.page-heading{background:#f5f6f8;padding-block:58px;border-bottom:0}.page-heading h1{font-size:clamp(38px,4.4vw,61px);letter-spacing:-1.9px}.page-lead{font-size:17px;color:#8b929e}.contact-form label{font-size:14px}.contact-form input,.contact-form textarea,.contact-form select{border-radius:6px;padding:13px 15px;font-size:15px}.panel{border-radius:10px;border-color:#e8ebf0}.primary-panel{background:#f6f7fb}.donation-grid h2{font-size:30px}.details-panel summary{font-size:20px}.details-panel .icon{width:16px;height:16px}.prose p{font-size:15px;color:#798391}.prose blockquote{border-radius:7px;font-size:21px}.budget{margin-bottom:40px}.donation-budget{margin-top:55px;border-top:1px solid var(--line);padding-top:50px}.video-card iframe{border-radius:9px}.widget-panel iframe{border-radius:7px}.widget-panel a .icon{width:13px;height:13px}.button,.project-link,.header-support,.header-join,.hero-contact{white-space:nowrap}body.birthdays-page .button{white-space:nowrap}
@media(max-width:1150px){.desktop-nav{gap:17px}.header-inner{gap:20px}.header-join{display:none}.modern-hero{gap:50px}.hero-portrait{height:525px}.impact-strip{grid-template-columns:180px 1fr;gap:20px}.stats strong{font-size:30px}.stats span{font-size:11px}.volunteer-grid{grid-template-columns:repeat(3,1fr);gap:28px}.volunteer img{height:300px}.modern-footer .footer-grid{gap:80px}.project-card-copy{padding:20px}.project-card-image{height:205px}}@media(max-width:900px){.desktop-nav{display:none}.menu-label{display:block;font-size:12px}.modern-hero{gap:35px}.hero-portrait{height:490px}.modern-hero h1{font-size:52px}.hero-actions{gap:17px}.impact-strip{grid-template-columns:1fr}.impact-intro{display:flex;align-items:center;gap:20px}.impact-intro .eyebrow{margin:0}.impact-intro h2{font-size:20px}.project-grid{grid-template-columns:repeat(2,1fr)}.budget-heading h2{font-size:32px}.budget-shares{gap:7px}.budget-share h3{font-size:13px}.modern-sponsor{padding:36px}.modern-sponsor h2{font-size:34px}.gallery-carousel .carousel-slide{flex-basis:calc((100% - 16px)/2)}.partners-carousel .carousel-slide{flex-basis:calc((100% - 32px)/3)}.modern-footer .footer-grid{gap:50px}.hero-description{font-size:15px}}@media(max-width:640px){.container{width:calc(100% - 36px)}.modern-header{height:73px}.header-inner{width:calc(100% - 28px);gap:10px}.modern-header .brand{gap:9px}.modern-header .brand img{width:44px;height:44px}.brand-name{font-size:21px}.brand-name small{font-size:9px;letter-spacing:0;margin-top:5px}.header-buttons{gap:4px}.header-support{font-size:11px;gap:7px;padding:10px 11px;min-height:36px}.header-support .icon{width:13px;height:13px}.modern-header .menu{margin-left:1px}.modern-header .menu summary{height:36px;padding:6px;gap:0}.menu-label{display:none}.menu summary>.icon:last-child{display:none}.menu summary>.icon:first-child{width:22px;height:22px}.modern-header .menu nav{top:47px;width:280px;max-width:calc(100vw - 28px);right:0}.modern-hero{grid-template-columns:1fr;gap:32px;padding-top:36px;padding-bottom:35px}.modern-hero h1{font-size:clamp(44px,10.5vw,61px);letter-spacing:-1.8px;margin-bottom:24px}.modern-hero .eyebrow{font-size:9px;letter-spacing:.6px;margin-bottom:22px;gap:7px}.hero-description{font-size:14px;line-height:1.85;max-width:390px;margin-bottom:25px}.hero-actions{gap:18px;flex-wrap:wrap}.hero-actions .button{font-size:13px;padding:13px 18px;gap:10px;min-height:46px}.hero-contact{font-size:12px;gap:4px}.hero-contact .icon{width:14px;height:14px}.hero-caption{display:none}.hero-portrait{height:395px;border-radius:9px 9px 80px 9px}.portrait-caption{bottom:22px;left:20px;padding:11px 15px}.portrait-caption>strong{font-size:15px}.impact-strip{padding:29px 0;gap:25px}.impact-intro h2{font-size:19px}.impact-strip .stats{grid-template-columns:repeat(3,1fr);gap:25px 16px}.stats strong{font-size:32px}.stats span{font-size:11px;margin-top:5px}.section{padding-block:55px}.section-heading{display:block;margin-bottom:25px}.section-heading h2{font-size:33px}.section-heading>p{font-size:12px;margin-top:17px}.section-heading>p br{display:none}.project-filters{gap:7px;margin-bottom:25px}.project-filters button{padding:7px 13px;font-size:11px}.project-grid{grid-template-columns:1fr;gap:22px}.project-card-image{height:245px}.project-card-copy{padding:23px}.project-card h3{font-size:26px}.project-excerpt,.project-detail p{font-size:13px}.project-detail{margin-bottom:20px}.project-link{font-size:13px}.help-strip{display:block;padding:30px 24px}.help-strip h2{font-size:31px}.help-strip .button{margin-top:25px;font-size:13px;padding:13px 17px}.budget-heading{display:block;margin-bottom:23px}.budget-heading h2{font-size:30px}.budget-heading>p{text-align:left;margin-top:18px}.budget-heading>p br{display:none}.budget-heading strong{font-size:21px;margin-left:10px}.budget-shares{grid-template-columns:repeat(2,1fr);gap:12px}.budget-share{padding:12px 5px}.budget-share:last-child{grid-column:1/-1}.budget-share h3{font-size:14px}.budget-ring{width:95px;height:95px}.modern-sponsor{display:block;padding:32px 25px;margin-top:33px}.modern-sponsor h2{font-size:33px}.modern-sponsor .button{margin-top:25px;font-size:13px}.volunteer-section{padding-top:0}.volunteer-grid{grid-template-columns:1fr 1fr;gap:25px 17px}.volunteer img{height:235px}.volunteer h3{font-size:17px}.gallery-carousel .carousel-slide{flex-basis:85%}.gallery-carousel .carousel-slide img{height:250px}.partners-carousel .carousel-slide{flex-basis:calc((100% - 16px)/2);height:100px}.partners-carousel .carousel-slide img{max-width:120px;max-height:70px}.carousel-buttons button{width:35px;height:35px}.modern-footer .footer-grid{grid-template-columns:1fr;padding-block:50px;gap:40px}.modern-footer .footer-identity{margin-bottom:26px}.modern-footer h2{font-size:31px}.modern-footer .footer-nav{max-width:none}.modern-footer .copyright{padding-block:18px;font-size:9px;gap:15px}.floating-whatsapp{width:51px;height:51px;bottom:17px;right:17px}.floating-whatsapp .icon{width:26px;height:26px}.page-heading{padding-block:39px}.page-heading h1{font-size:39px;letter-spacing:-1.3px}.page-lead{font-size:15px}.button{font-size:14px;padding:13px 18px;gap:10px}.panel{padding:24px}.donation-grid h2{font-size:27px}.donation-budget{margin-top:35px;padding-top:35px}.prose blockquote{padding:23px;font-size:19px}.calendar-context h2{font-size:28px}.widget-panel{padding:16px}}@media(max-width:360px){.brand-name{font-size:18px}.brand-name small{font-size:8px}.modern-header .brand img{width:38px;height:38px}.header-inner{width:calc(100% - 22px);gap:7px}.header-support{padding:9px;font-size:10px}.header-support .icon{display:none}.hero-actions{gap:16px}.hero-portrait{height:365px}.modern-hero h1{font-size:43px}.project-filters button{padding:7px 10px}.volunteer img{height:205px}.button{font-size:13px;padding:13px 15px}}@media(prefers-reduced-motion:reduce){.carousel-track{scroll-behavior:auto}.ring-progress{transition:none}}


/* A light, consistent photographic grade; brand artwork stays untouched. */
.hero-portrait>img,
.project-card-image img,
.volunteer img,
.gallery-carousel .carousel-slide img,
#lightbox>img {
  filter:url('/assets/photo-tone.svg#neutral-cool') saturate(.84) contrast(.96);
}
.hero-portrait { background:#e9eef5; }
.hero-portrait>img { object-position:58% 29%; }
.hero-portrait::after,
.project-card-image::after {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(135deg,rgba(232,240,255,.12),transparent 45%,rgba(102,126,183,.05));
}
.project-number { z-index:1; }

/* One compact composition on mobile: portrait behind the copy, no second row. */
@media(max-width:640px) {
  .modern-hero.container {
    position:relative;
    isolation:isolate;
    display:block;
    width:100%;
    margin:0;
    padding:34px 22px 30px;
    min-height:470px;
    overflow:hidden;
    background:#f2f5fa;
  }
  .modern-hero-copy { position:relative;z-index:2; }
  .modern-hero .hero-portrait {
    position:absolute;
    z-index:0;
    top:0;
    bottom:0;
    left:12%;
    width:100%;
    height:100%;
    border-radius:0;
    pointer-events:none;
  }
  .modern-hero .hero-portrait>img {
    object-position:65% 20%;
    opacity:.94;
  }
  .modern-hero::after {
    content:"";
    position:absolute;
    z-index:1;
    inset:0;
    pointer-events:none;
    background:
      linear-gradient(0deg,#f2f5fa 0%,rgba(242,245,250,.98) 20%,rgba(242,245,250,.7) 42%,transparent 72%),
      linear-gradient(90deg,#f2f5fa 0%,rgba(242,245,250,.98) 30%,rgba(242,245,250,.70) 55%,rgba(242,245,250,.06) 100%);
  }
  .modern-hero .portrait-caption { display:none; }
  .modern-hero .eyebrow { max-width:265px;line-height:1.7;margin-bottom:23px; }
  .modern-hero h1 {
    max-width:235px;
    font-size:clamp(34px,9.1vw,42px);
    line-height:1.08;
    letter-spacing:-1.3px;
    margin-bottom:22px;
    text-wrap:balance;
  }
  .modern-hero h1 span { color:#6f7cbf; }
  .modern-hero .hero-description {
    max-width:305px;
    color:#606c7d;
    font-size:13px;
    line-height:1.8;
    margin-bottom:23px;
  }
  .modern-hero .hero-actions { gap:17px; }
  .modern-hero .hero-actions .button { padding:12px 16px;font-size:12px;min-height:44px; }
  .modern-hero .hero-contact { font-size:11px;gap:5px; }
}
@media(max-width:360px) {
  .modern-hero.container { padding:30px 18px 27px;min-height:470px; }
  .modern-hero .hero-portrait { left:8%; }
  .modern-hero h1 { max-width:211px;font-size:34px; }
  .modern-hero .eyebrow { max-width:245px;font-size:8px; }
  .modern-hero .hero-description { max-width:275px;font-size:12px; }
  .modern-hero .hero-actions { gap:15px; }
}


/* Quiet visual depth: a little colour, consistent icons, responsive hover states. */
.modern-hero { position:relative;isolation:isolate; }
.modern-hero::before {
  content:"";position:absolute;z-index:-1;pointer-events:none;
  top:-35px;right:-38px;width:65%;height:100%;
  background:radial-gradient(ellipse at 70% 40%,rgba(166,184,229,.15),transparent 68%);
}
.page-heading { position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(115deg,#f5f6fb,#eff5f6); }
.page-heading::after {
  content:"";position:absolute;inset:0 0 0 auto;z-index:-1;width:min(43%,510px);pointer-events:none;
  background:url('/assets/connection-lines.svg') center right/cover no-repeat;
}
.project-card { transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease; }
.project-card-title { display:flex;align-items:center;gap:11px;margin-bottom:14px; }
.project-card-title h3 { margin:0;font-size:24px; }
.project-topic-icon,.panel-icon {
  display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;
  width:37px;height:37px;border-radius:11px;
  background:linear-gradient(135deg,#edf0fb,#f1f6f7);color:#7585b8;
}
.project-topic-icon .icon { width:20px;height:20px; }
.project-card-image::after { opacity:.65;transition:opacity .4s ease; }
.help-strip { background:linear-gradient(110deg,#f0f4f6,#f0f5f2);border:1px solid #e9efed; }
.modern-sponsor { background:linear-gradient(115deg,#6f80c3 0%,#8196c8 65%,#8faac4 100%); }
.payment-panel-heading { display:flex;align-items:center;gap:12px;margin-bottom:22px; }
.payment-panel-heading .eyebrow { margin:0; }
.panel-icon { width:38px;height:38px; }
.primary-panel { background:linear-gradient(145deg,#f3f4fb,#f8fafc); }
.primary-panel>.button+p { margin-top:18px;margin-bottom:0;line-height:1.75; }
.bank dd { text-align:left; }
.bank dd[dir="rtl"] { text-align:left;unicode-bidi:isolate; }
@media(hover:hover) and (pointer:fine) {
  .project-card:hover { transform:translateY(-4px);box-shadow:0 14px 30px rgba(55,75,112,.065);border-color:#d7dfee; }
  .project-card:hover .project-card-image::after { opacity:1; }
  .social a { transition:transform .2s ease,background .2s ease; }
  .social a:hover { transform:translateY(-2px); }
}
@media(max-width:640px) {
  .modern-hero::before { display:none; }
  .page-heading::after { width:60%;opacity:.55; }
  .project-card-title h3 { font-size:24px; }
  .project-topic-icon { width:34px;height:34px;border-radius:10px; }
  .payment-panel-heading { gap:10px;margin-bottom:19px; }
  .payment-panel-heading .eyebrow { font-size:10px;letter-spacing:1.3px; }
  .primary-panel>.button+p { margin-top:17px; }
}
@media(prefers-reduced-motion:reduce) {
  .project-card:hover,.social a:hover { transform:none; }
}


/* Social controls are buttons, not padded text rows in the dropdown. */
.modern-header .menu nav .social {
  display:flex;align-items:center;gap:10px;
  padding:17px 8px 8px;margin-top:9px;
}
.modern-header .menu nav .social>a {
  display:inline-flex;align-items:center;justify-content:center;
  flex:0 0 36px;width:36px;height:36px;min-height:36px;
  padding:0;margin:0;border:1px solid #dfe5ee;border-radius:50%;
  color:#687990;background:#fff;line-height:1;text-decoration:none;
}
.modern-header .menu nav .social>a>.icon {
  display:block;flex:0 0 16px;width:16px;height:16px;margin:0;
}
.modern-header .menu nav .social>a:hover {
  background:#eef2fa;border-color:#c9d4e5;color:#4f65a1;
}

/* One reading system: explanations, quoted text, pronunciation, and notes. */
.prose.narrow { max-width:820px; }
.prose>p { color:#5e6879;font-size:16px;line-height:1.85; }
.prose .reading-step { margin-top:30px;color:#333f53; }
.reading-block { margin:24px 0;padding:22px 26px;border-radius:14px; }
.reading-label { display:block;margin-bottom:10px;font-family:Jost,Arial,sans-serif;font-size:11px;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:#7383b2; }
.reading-block>p { margin:0;font-size:16px;line-height:1.9; }
.prose blockquote,.reading-quote { margin:26px 0;padding:6px 0 6px 24px;border:0;border-left:3px solid #aab7db;border-radius:0;background:none;color:#34425a;font-weight:500;font-size:18px;line-height:1.9; }
.reading-quote>p { color:#34425a;font-size:17px;font-weight:500; }
.reading-transliteration { background:linear-gradient(120deg,#f3f4fa,#f7f9fc);border:1px solid #e8ecf4;color:#586580; }
.reading-transliteration em { font-style:italic;font-weight:400; }
.reading-note { background:#f3f7f6;border-left:3px solid #a8c4bc;color:#526965; }
.reading-note .reading-label { color:#738f87; }
.reading-note>p { font-size:14px;line-height:1.8; }
.hebrew-prayer { margin:30px 0;padding:28px 32px;border:1px solid #e1e6f0;border-radius:18px;background:radial-gradient(ellipse at top right,#edf0fb,transparent 75%),#fafbfe; }
.hebrew-prayer>p { margin:18px 0 0;font-family:Georgia,'Times New Roman',serif;font-size:29px;font-weight:400;line-height:2.1;text-align:right;color:#3f4b69; }
.prayer-heading { display:flex;align-items:center;gap:12px;margin-bottom:20px; }
.prayer-heading .eyebrow { margin:0; }
.heading-art { position:absolute;z-index:-1;right:3%;top:50%;transform:translateY(-50%);width:min(34%,390px);height:100%;color:#9baed0;opacity:.55;pointer-events:none; }
.has-heading-art::after { opacity:.13; }
.has-heading-art .container { position:relative; }
.has-heading-art h1,.has-heading-art .page-lead { max-width:75%; }
.candles-layout { display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:stretch;gap:28px;width:min(1060px,calc(100% - 72px));padding-top:52px;padding-bottom:30px; }
.calendar-context { display:flex;flex-direction:column;background:linear-gradient(145deg,#f4f5fb,#f9fbfc);position:relative;overflow:hidden; }
.candles-layout>.panel { padding:28px; }
.calendar-context-heading { display:flex;align-items:center;gap:12px; }
.calendar-context-heading .eyebrow { margin:0;font-size:10px; }
.calendar-context h2 { font-size:27px;line-height:1.3;margin:21px 0 6px;letter-spacing:-.6px; }
.calendar-context .section-lead { font-family:Jost,Arial,sans-serif;font-size:25px;line-height:1.25;font-weight:500;color:#495773;margin:0; }
.calendar-symbol { display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:38px;height:38px;background:#e9eef8;color:#899ac4;border-radius:12px; }
.calendar-symbol .icon { width:23px;height:23px; }
.weekly-reading { margin:21px 0 16px;padding-top:19px;border-top:1px solid #e3e8f1; }
.weekly-reading .reading-label { margin-bottom:7px;font-size:10px; }
.calendar-context-note { font-size:13px;line-height:1.75;color:#7b879c;margin:0 0 14px; }
.calendar-guide { display:inline-flex;align-items:center;gap:8px;font-family:Jost,Arial,sans-serif;font-size:13px;text-decoration:none;align-self:flex-start;margin-bottom:20px; }
.calendar-guide .icon { width:14px;height:14px; }
.calendar-context #calendar-date { font-size:13px;margin:0;color:#8a94a4; }
.calendar-location { display:flex;align-items:center;gap:8px;margin-top:auto;padding-top:16px;border-top:1px solid #e3e8f1;color:#7d8aa2;font-size:11px; }
.calendar-location .icon { width:15px;height:15px; }
.schedule-heading { display:flex;justify-content:space-between;gap:12px;align-items:center;padding-bottom:13px; }
.schedule-heading .eyebrow { margin:0;font-size:10px; }
.schedule-location { background:#f0f4f7;border-radius:30px;padding:5px 12px;font-size:11px;color:#77889b; }
.candle-time-row { display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:14px 0;border-top:1px solid #e8ecf3; }
.candle-time-row .candle-event-title { font-family:Jost,Arial,sans-serif;font-size:18px;font-weight:500;margin:4px 0 0;color:#35425c; }
.candle-time-row time { font-family:Jost,Arial,sans-serif;font-variant-numeric:tabular-nums;font-size:29px;font-weight:500;letter-spacing:-.7px;color:#687bb8; }
.candle-time-end time { color:#718a91;font-size:27px; }
.candle-civil-date { margin:0;color:#8b94a4;font-size:11px; }
.candle-civil-date::first-letter { text-transform:uppercase; }
.candle-time-row .candle-holiday { text-align:left;font-size:15px;margin:4px 0 0;color:#8b94a4; }
.candle-time-row .candle-timing-note { color:#8591a4;font-size:11px;line-height:1.5;margin:6px 0 0; }
.schedule-footnote { font-size:11px;color:#8893a5;line-height:1.65;margin:12px 0 0; }
.candle-reading { padding-top:30px; }
@media(max-width:800px) {
  .candles-layout { grid-template-columns:1fr;gap:24px; }
  .calendar-context { padding:28px; }
  .calendar-symbol { float:none;margin:0; }
  .calendar-context h2 { margin-top:19px;font-size:27px; }
  .calendar-location { margin-top:0; }
}
@media(max-width:640px) {
  .heading-art { width:56%;right:-9%;opacity:.25; }
  .has-heading-art h1,.has-heading-art .page-lead { max-width:100%; }
  .prose>p { font-size:15px; }
  .reading-block { padding:20px;margin:22px 0; }
  .reading-block>p { font-size:15px;line-height:1.85; }
  .prose blockquote { padding:3px 0 3px 19px; }
  .reading-quote>p { font-size:16px; }
  .reading-note>p { font-size:13px; }
  .hebrew-prayer { padding:24px 20px; }
  .hebrew-prayer>p { font-size:25px;line-height:2; }
  .candles-layout { width:calc(100% - 36px);padding-top:32px;padding-bottom:22px;gap:20px; }
  .candles-layout>.panel { padding:23px; }
  .schedule-heading .eyebrow { font-size:10px;letter-spacing:1.1px; }
  .candle-time-row { gap:12px;padding:14px 0; }
  .candle-time-row .candle-event-title { font-size:18px; }
  .candle-time-row time { font-size:28px; }
  .candle-time-end time { font-size:27px; }
  .candle-reading { padding-top:22px; }
}

/* The owner's original thematic SVGs, locally hosted and recoloured only. */
.project-topic-icon .original-icon { width:27px;height:27px; }
.project-topic-icon:has(.original-icon) { width:43px;height:43px;border-radius:12px; }
.panel-icon .original-icon { width:25px;height:25px; }
.calendar-symbol .original-icon { width:28px;height:28px; }
.original-heading-art { width:min(25%,260px);height:76%;right:10%;opacity:.15; }
.brand>img,.footer-identity>img,.private-brand>img { mix-blend-mode:multiply; }
.partners-carousel .carousel-slide { border:0;box-shadow:none;background:transparent;border-radius:0; }
@media(max-width:640px) {
  .project-topic-icon .original-icon { width:25px;height:25px; }
  .project-topic-icon:has(.original-icon) { width:39px;height:39px; }
  .original-heading-art { width:44%;right:-2%;opacity:.09; }
}

/* The organisation name is the identity; no subtitle beneath it. */
.brand-name.organization-name,.footer-identity>.organization-name { font-size:22px;line-height:1.2;letter-spacing:-.4px;white-space:nowrap; }
@media(max-width:640px) {
  .brand-name.organization-name { font-size:17px;line-height:1.17;letter-spacing:-.2px; }
  .brand-name.organization-name .organization-title>span { display:block; }
  .modern-header .brand { gap:8px; }
}
@media(max-width:360px) { .brand-name.organization-name { font-size:16px; } }

/* Portrait credit sits directly on the photograph. */
.portrait-caption {
  z-index:2;
  left:30px;
  right:26px;
  bottom:32px;
  padding:0;
  gap:6px;
  background:transparent;
  border-radius:0;
  backdrop-filter:none;
  text-shadow:0 2px 16px rgba(12,20,33,.35);
}
.portrait-caption>span {
  color:rgba(255,255,255,.83);
  font-size:14px;
  line-height:1.4;
}
.portrait-caption>strong {
  color:#fff;
  font-size:clamp(22px,2.1vw,29px);
  line-height:1.2;
  font-weight:500;
  letter-spacing:-.4px;
}
@media(min-width:641px) {
  .hero-portrait::after {
    z-index:1;
    background:
      linear-gradient(180deg,transparent 52%,rgba(18,27,44,.10) 73%,rgba(18,27,44,.48)),
      linear-gradient(135deg,rgba(232,240,255,.12),transparent 45%,rgba(102,126,183,.05));
  }
}

.organization-title { display:block; }
.brand-name.organization-name>small,.footer-identity>.organization-name>small { display:block;font-size:13px;font-weight:600;line-height:1.3;letter-spacing:.25px;color:#6d7b96;margin-top:6px; }
.candle-guide-section { padding-top:28px;padding-bottom:18px;scroll-margin-top:110px; }
.candle-guide-section h2 { font-size:32px;line-height:1.25; }
.candle-guide-section h3 { font-family:Jost,Arial,sans-serif;font-size:22px;font-weight:500;margin:28px 0 12px; }
.candle-steps { list-style:none;counter-reset:candle-step;padding:0;margin:0; }
.candle-steps li { counter-increment:candle-step;display:grid;grid-template-columns:29px minmax(0,1fr);column-gap:14px;padding:16px 0;border-bottom:1px solid #e7ebf2; }
.candle-steps li::before { content:counter(candle-step);grid-row:1 / span 2;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#edf1f8;color:#8493b5;font:500 12px Jost,Arial,sans-serif; }
.candle-steps strong { font-family:Jost,Arial,sans-serif;font-size:17px;font-weight:500;color:#3b4963;line-height:1.5; }
.candle-steps span { grid-column:2;font-size:14px;line-height:1.8;color:#768197;margin-top:4px; }
.prose>.candle-custom-note { font-size:12px;line-height:1.8;color:#8a95a6;margin-top:18px; }
@media(max-width:640px) {
  .brand-name.organization-name>small { font-size:9.5px;margin-top:3px;letter-spacing:.1px; }
  .candle-guide-section { padding-top:24px;padding-bottom:8px; }
  .candle-guide-section h2 { font-size:28px; }
  .candle-steps li { column-gap:11px; }
  .candle-steps strong { font-size:16px; }
  .candle-steps span { font-size:13px; }
}

/* Current dates lead; later dates stay visible with quieter type. */
.candles-layout>.candle-schedule { padding:20px; }
.candle-week-current { padding:17px 19px 3px;border:1px solid #e2e8f5;border-radius:12px;background:linear-gradient(120deg,#eef1fb,#f6f9fb); }
.candle-week-label { margin:0 0 8px;font:500 12px/1.4 Jost,Arial,sans-serif;letter-spacing:.3px;color:#7585b4; }
.candle-week-current .candle-week-label { display:inline-block;padding:5px 10px;border-radius:30px;background:#dfe6f8;color:#5a6ea6; }
.candle-week-current .candle-time-row { border-color:#dfe5f1; }
.candle-week-current .candle-time-row:first-of-type { border-top:0; }
.candle-week-current .candle-time-row time { font-size:33px; }
.candle-week-current .candle-time-end time { font-size:30px; }
.candle-week-next { margin:19px 7px 0; }
.candle-week-next .candle-week-label { font-size:11px;color:#939daf; }
.candle-week-next .candle-time-row { padding:10px 0;gap:14px; }
.candle-week-next .candle-event-title { font-size:15px;color:#8792a6;font-weight:400; }
.candle-week-next .candle-time-row time { font-size:23px;color:#8a98ae;letter-spacing:-.2px; }
.candle-week-next .candle-civil-date { font-size:10px;color:#a0a8b6; }
.candle-week-next .candle-time-row:first-of-type { border-top:0; }
.calendar-guide { margin-top:auto;margin-bottom:0; }
.calendar-context-note { margin-bottom:22px; }
@media(max-width:800px) {
 .candles-layout>.candle-schedule { order:-1; }
}
@media(max-width:640px) {
 .candles-layout>.candle-schedule { padding:15px; }
 .candle-week-current { padding:15px 14px 2px; }
 .candle-week-current .candle-time-row time { font-size:30px; }
 .candle-week-current .candle-time-end time { font-size:28px; }
 .candle-week-next { margin-top:16px; }
 .candle-week-next .candle-time-row time { font-size:22px; }
}

/* A soft colour field gives the main sections depth without adding clutter. */
@media(min-width:641px) {
 .modern-hero.container {
  --hero-inset:clamp(28px,3.5vw,48px);
  --hero-corner:110px;
  width:min(1350px,calc(100% - 56px));
  margin-top:20px;
  padding:var(--hero-inset);
  grid-template-columns:minmax(0,1fr) minmax(0,.9fr);
  gap:clamp(32px,5vw,78px);
  border-radius:28px 28px calc(var(--hero-corner) + var(--hero-inset)) 28px;
 }
 .modern-hero::before { inset:0;width:auto;height:auto;border-radius:inherit;background:radial-gradient(ellipse at 12% 44%,rgba(168,177,230,.18),transparent 59%),radial-gradient(ellipse at 97% 9%,rgba(164,204,199,.17),transparent 57%),linear-gradient(120deg,rgba(245,246,253,.3),rgba(241,247,247,.45)); }
 .modern-hero .hero-portrait { box-shadow:0 20px 52px rgba(72,90,123,.09); }
}
.modern-hero .eyebrow { color:#7889ae; }
.modern-hero .button { background:linear-gradient(115deg,#5669a7,#7482bc);box-shadow:0 8px 24px rgba(91,110,170,.16); }
.modern-hero .button:hover { background:linear-gradient(115deg,#4d609e,#6978b3); }
.modern-hero h1>span { color:#7d8dcc; }
.impact-strip .stats strong { color:#6f83ae; }
.projects-backdrop { margin-top:20px;background:linear-gradient(180deg,#fff,#f4f6fc 15%,#f3f8f8 85%,#fff); }
.projects-section .section-heading h2::after { content:"";display:block;width:64px;height:4px;border-radius:9px;margin-top:15px;background:linear-gradient(90deg,#b3bde4,#b6d4cf); }
.project-card { --topic-colour:#7e8fb9;--topic-background:#edf1fb;--topic-soft:#fbfcff;border-color:#e3e8f1;box-shadow:0 5px 22px rgba(61,82,120,.035);background:linear-gradient(155deg,#fff 62%,var(--topic-soft)); }
.project-card[data-project-category="help"] { --topic-colour:#729c9d;--topic-background:#eaf4f2;--topic-soft:#f9fdfc; }
.project-card[data-project-category="tradition"] { --topic-colour:#9585af;--topic-background:#f0edf8;--topic-soft:#fcfaff; }
.project-card .project-topic-icon { color:var(--topic-colour);background:var(--topic-background); }
.project-card .project-link { color:var(--topic-colour); }
.project-card .project-link>.icon { box-sizing:border-box;width:30px;height:30px;padding:7px;border-radius:50%;background:var(--topic-background); }
.project-filters button { background:rgba(255,255,255,.7); }
.project-filters button.active { background:#6679ad;border-color:#6679ad;box-shadow:0 4px 12px rgba(99,120,171,.12); }
@media(max-width:640px) {
 .projects-backdrop { margin-top:6px; }
 .projects-section .section-heading h2::after { width:48px;height:3px;margin-top:12px; }
 .modern-hero .button { box-shadow:0 6px 18px rgba(91,110,170,.14); }
}

/* Useful guides and the calendar share the site's existing visual language. */
.modern-header .menu nav { max-height:calc(100dvh - 110px);overflow-y:auto;overscroll-behavior:contain; }
.resource-section { padding-top:25px; }
.resource-grid,.holiday-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px; }
.resource-card { display:flex;flex-direction:column;align-items:flex-start;padding:28px;border:1px solid #e2e8f2;border-radius:16px;text-decoration:none;color:inherit;background:linear-gradient(140deg,#f5f7fc,#fafcfd);transition:transform .2s ease,box-shadow .2s ease; }
.resource-card:nth-child(2) { background:linear-gradient(140deg,#f0f7f5,#fbfdfc); }
.resource-card:nth-child(3) { background:linear-gradient(140deg,#f4f1fa,#fcfbfe); }
.resource-card h3 { font-size:25px;font-weight:500;line-height:1.3;margin:22px 0 12px;letter-spacing:-.5px; }
.resource-card p { font-size:14px;line-height:1.85;color:#7c899e;margin:0 0 24px; }
.resource-link { display:flex;align-items:center;gap:10px;margin-top:auto;font:500 13px Jost,Arial,sans-serif;color:#7487b5; }
.resource-link .icon { width:17px;height:17px; }
.information-copy { padding-top:48px;padding-bottom:38px; }
.prose .article-intro { font-family:Jost,Arial,sans-serif;font-size:21px;line-height:1.7;color:#54627c; }
.article-layout { display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.8fr);gap:70px;align-items:start; }
.article-main { min-width:0; }
.article-main h2,.information-copy h2 { font-size:30px;line-height:1.3;margin:32px 0 18px;letter-spacing:-.7px; }
.article-main h2:first-of-type { margin-top:26px; }
.article-aside { position:sticky;top:110px;background:linear-gradient(140deg,#eff5f4,#f8fafc); }
.article-aside h2 { font-size:29px;line-height:1.25;margin:20px 0;letter-spacing:-.6px; }
.article-aside p { font-size:14px;line-height:1.85;color:#77869a; }
.article-aside .button { display:flex;justify-content:center;width:100%;font-size:13px;padding-inline:16px;margin-top:13px; }
.article-aside .button+.button { background:#fff;color:#6f8c93;border:1px solid #dce6e9; }
.article-aside p.article-aside-note { font-size:11px;margin-top:18px; }
.article-aside-icon { display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;background:#e7eeef;color:#85a0a6;border-radius:14px;margin-bottom:20px; }
.article-aside-icon .icon { width:31px;height:31px; }
.article-checklist { padding-left:22px;color:#69778d;font-size:15px;line-height:1.85; }
.article-checklist li { padding-left:6px;margin-bottom:15px; }
.article-checklist strong { font-weight:500;color:#42516b; }
.article-details { border:1px solid #e2e7f1;border-radius:14px;padding:18px 22px;margin:26px 0; }
.article-details summary { cursor:pointer;font:500 17px Jost,Arial,sans-serif;color:#6477a7; }
.article-details>p { font-size:13px;line-height:1.8; }
.article-related { display:flex;flex-wrap:wrap;gap:16px 25px;margin-top:34px;padding-top:24px;border-top:1px solid #e4e9f1; }
.article-related a { display:inline-flex;gap:8px;align-items:center;text-decoration:none;font:400 14px Jost,Arial,sans-serif; }
.article-related .icon { width:17px;height:17px; }
.prose .article-sources,.article-sources { font-size:11px;line-height:1.9;color:#8b96aa;margin:26px 0 0; }
.article-sources .icon { width:11px;height:11px; }
.community-projects { display:grid;grid-template-columns:1fr 1fr;gap:28px; }
.community-project { background:linear-gradient(135deg,#f4f6fc,#fbfcfe);display:flex;align-items:flex-start;flex-direction:column; }
.community-project:nth-child(2) { background:linear-gradient(135deg,#f1f7f5,#fbfdfd); }
.community-project h2 { font-size:33px;line-height:1.2;margin:12px 0 20px;letter-spacing:-.8px; }
.community-project>.eyebrow { margin:0; }
.community-project>p:not(.eyebrow):not(.article-sources) { font-size:15px;line-height:1.85;color:#728097; }
.community-project .button,.community-project .text-link { margin-top:auto; }
.community-project .button { font-size:13px; }
.article-contact-panel { padding:28px 32px;background:linear-gradient(125deg,#f1f4fb,#f0f7f5);border-radius:16px;margin-top:36px; }
.article-contact-panel h2 { margin-top:0; }
.article-contact-panel>p { font-size:15px;color:#748297; }
.article-contact-panel .text-link { display:block;margin-top:17px;font-size:13px; }
.holiday-calendar-section { padding-top:48px;padding-bottom:24px; }
.holiday-toolbar { display:flex;gap:25px;align-items:center;justify-content:space-between;margin-bottom:22px; }
.holiday-toolbar h2 { font-size:32px;margin:0;letter-spacing:-.7px; }
.holiday-toolbar .eyebrow { margin-bottom:9px; }
.holiday-year-form { display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap; }
.holiday-year-form label { display:flex;flex-direction:column;gap:4px;font-size:11px;color:#8491a6; }
.holiday-year-form input { width:108px;padding:11px 13px;border:1px solid #dce3ef;border-radius:7px;font:400 16px Jost,Arial,sans-serif;background:#fff;color:#465571;min-height:46px; }
.holiday-year-form .button { min-height:46px;padding:12px 18px;font-size:13px; }
.text-button { padding:12px 8px;min-height:46px;background:none;border:0;font:400 13px Jost,Arial,sans-serif;color:#7b8bad;cursor:pointer; }
.holiday-intro { max-width:750px;font-size:14px;color:#8090a4;line-height:1.85;margin-bottom:30px; }
.holiday-card { padding:25px;border:1px solid #e2e8f2;border-radius:15px;background:#fff;display:flex;flex-direction:column; }
.holiday-card-upcoming { border-color:#c3d1ea;background:linear-gradient(140deg,#f0f3fd,#f8fcfb);box-shadow:0 8px 30px rgba(100,124,165,.06); }
.holiday-card-top { display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:17px; }
.holiday-card-top .reading-label { margin:0;font-size:9px;letter-spacing:.7px; }
.holiday-badge { padding:4px 8px;border-radius:20px;font:500 9px Jost,Arial,sans-serif;color:#6a7fad;background:#e5ecfa; }
.holiday-card h2 { font-size:25px;font-weight:500;line-height:1.25;letter-spacing:-.6px;margin:0 0 16px; }
.holiday-card>p { font-size:13px;line-height:1.85;color:#7c899e; }
.holiday-card>p.holiday-dates { color:#566783;font-size:13px;margin:0 0 15px; }
.holiday-prepare { margin-top:auto;padding-top:16px; }
.holiday-prepare strong { font:500 12px Jost,Arial,sans-serif;color:#617695; }
.holiday-prepare p { color:#8b96a9;font-size:12px;line-height:1.8;margin:6px 0 0; }
.holiday-times { border-top:1px solid #e2e8f2;padding-top:16px;margin-top:20px; }
.holiday-times summary { font:400 12px/1.5 Jost,Arial,sans-serif;color:#7388b2;cursor:pointer; }
.holiday-times>div { padding-top:9px; }
.holiday-times p { display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:11px;color:#8390a4;line-height:1.6;margin:10px 0; }
.holiday-times time { color:#6076a7;font:500 18px Jost,Arial,sans-serif;font-variant-numeric:tabular-nums;white-space:nowrap; }
.holiday-times small { display:block;font-size:10px;line-height:1.7;color:#8d99ac; }
@media(hover:hover) and (pointer:fine) { .resource-card:hover { transform:translateY(-3px);box-shadow:0 12px 30px rgba(81,102,145,.065); } }
@media(max-width:1000px) {
 .article-layout { gap:30px;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr); }
 .article-aside { padding:26px; }
 .holiday-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .resource-card { padding:23px; }
 .resource-card h3 { font-size:23px; }
}
@media(max-width:800px) {
 .article-layout { grid-template-columns:1fr;gap:30px; }
 .article-aside { position:static;order:-1; }
 .article-aside .button { display:inline-flex;width:auto;min-width:195px;margin-right:10px; }
 .holiday-toolbar { display:block; }
 .holiday-year-form { margin-top:22px; }
 .resource-grid { grid-template-columns:1fr; }
 .resource-card h3 { margin-top:17px; }
 .community-projects { grid-template-columns:1fr;gap:22px; }
}
@media(max-width:640px) {
 .information-copy,.holiday-calendar-section { padding-top:32px;padding-bottom:25px; }
 .holiday-grid { grid-template-columns:1fr;gap:19px; }
 .holiday-toolbar h2 { font-size:28px; }
 .holiday-year-form { gap:9px; }
 .holiday-year-form input { width:98px; }
 .text-button { font-size:12px;padding-inline:3px; }
 .holiday-card { padding:24px; }
 .article-main h2,.information-copy h2 { font-size:27px; }
 .prose .article-intro { font-size:19px; }
 .article-aside h2 { font-size:27px; }
 .article-aside .button { display:flex;width:100%;min-width:0;margin-right:0; }
 .article-checklist { font-size:14px; }
 .article-details { padding:17px; }
 .article-contact-panel { padding:25px 22px; }
 .article-related { gap:16px; }
 .community-project h2 { font-size:30px; }
 .resource-section { padding-top:15px; }
}
@media(prefers-reduced-motion:reduce) { .resource-card { transition:none; }.resource-card:hover { transform:none; } }

.holiday-upcoming { display:flex;align-items:center;justify-content:space-between;gap:25px;padding:26px 30px;border:1px solid #dce5f1;border-radius:15px;background:linear-gradient(115deg,#eaf0fc,#eef7f4);margin-bottom:27px; }
.holiday-upcoming:empty { display:none; }
.holiday-upcoming .eyebrow { font-size:10px;margin-bottom:9px; }
.holiday-upcoming h2 { font:500 30px/1.25 Jost,Arial,sans-serif;letter-spacing:-.6px;margin:0; }
.holiday-upcoming p:not(.eyebrow) { font-size:13px;color:#7c8ba2;margin:11px 0 0;line-height:1.8; }
.holiday-upcoming>a { display:inline-flex;gap:12px;align-items:center;font:500 13px Jost,Arial,sans-serif;text-decoration:none;color:#7186b1;white-space:nowrap; }
@media(max-width:640px) {
 .holiday-upcoming { display:block;padding:23px; }
 .holiday-upcoming h2 { font-size:28px; }
 .holiday-upcoming>a { margin-top:18px; }
}

/* Donation instructions: visible steps with a compact help line. */
.donation-guidance { margin:32px 0 24px;padding:clamp(24px,3.5vw,42px);border:1px solid #e2e7f0;border-radius:18px;background:linear-gradient(120deg,#f5f6fc,#f5f9f8); }
.donation-guidance-heading { display:flex;align-items:center;gap:18px;margin-bottom:28px; }
.donation-guidance-heading .eyebrow { margin:0 0 7px; }
.donation-guidance-heading h2 { margin:0;font-size:clamp(25px,3vw,32px);line-height:1.25; }
.donation-steps { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;list-style:none;padding:0;margin:0;counter-reset:donation-step; }
.donation-steps li { counter-increment:donation-step;min-width:0; }
.donation-steps li::before { content:counter(donation-step,decimal-leading-zero);display:block;margin-bottom:13px;font:500 22px/1 Jost,Arial,sans-serif;color:#7b88b6; }
.donation-steps strong { display:block;font:500 17px/1.45 Jost,Arial,sans-serif;color:#404b64;margin-bottom:8px; }
.donation-steps span { display:block;font-size:14px;line-height:1.85;color:#68758b; }
.donation-help { margin:28px 0 0;padding-top:22px;border-top:1px solid #dfe5ef;font-size:14px;line-height:1.85;color:#53637c; }
.donation-help a { color:#586a9a;text-underline-offset:3px; }
.donation-help a[href^="tel:"] { white-space:nowrap;font-weight:500; }
.donation-recurring { max-width:820px;margin:32px 0; }
.donation-recurring h2 { font-size:27px;margin:0 0 12px; }
.donation-recurring p { font-size:16px;line-height:1.85;color:#5e6879;margin:0; }
.donation-recurring strong { font-weight:500;color:#404b64; }
@media(max-width:700px) {
 .donation-steps { grid-template-columns:1fr;gap:23px; }
 .donation-steps li { position:relative;padding-left:38px; }
 .donation-steps li::before { position:absolute;left:0;top:3px;font-size:19px; }
 .donation-guidance-heading { gap:13px;align-items:flex-start; }
 .donation-guidance-heading .panel-icon { flex-shrink:0; }
 .donation-guidance-heading .eyebrow { font-size:9px; }
 .donation-help { margin-top:24px;padding-top:18px; }
}

.project-resource-links { display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin:16px 0 5px; }
.project-resource-links a { display:inline-flex;align-items:center;gap:6px;font-size:13px;line-height:1.6;color:#6477a5;text-underline-offset:3px; }
.project-resource-links .icon { flex-shrink:0;width:15px;height:15px; }
.modern-sponsor p a { color:inherit;text-underline-offset:4px; }
