@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:500;font-display:swap;src:url('fonts/CormorantGaramond-italic-500-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/CormorantGaramond-normal-500-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/CormorantGaramond-normal-600-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/CormorantGaramond-normal-700-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Frank Ruhl Libre';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/FrankRuhlLibre-normal-400-hebrew.woff2') format('woff2');unicode-range:U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F;}
@font-face{font-family:'Frank Ruhl Libre';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/FrankRuhlLibre-normal-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Frank Ruhl Libre';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/FrankRuhlLibre-normal-500-hebrew.woff2') format('woff2');unicode-range:U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F;}
@font-face{font-family:'Frank Ruhl Libre';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/FrankRuhlLibre-normal-500-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Frank Ruhl Libre';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/FrankRuhlLibre-normal-700-hebrew.woff2') format('woff2');unicode-range:U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F;}
@font-face{font-family:'Frank Ruhl Libre';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/FrankRuhlLibre-normal-700-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Source Serif 4';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/SourceSerif4-normal-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Source Serif 4';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/SourceSerif4-normal-600-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
:root{--navy:#0f1f3d;--navy2:#162a50;--ink:#1b2333;--muted:#566075;--gold:#c29a45;--gold-d:#a8802c;--gold-ink:#7a5c1c;--cream:#f7f1e3;--paper:#fbf8f0;--line:#e2d6b8;
--display:'Cormorant Garamond','Frank Ruhl Libre',Georgia,serif;--body:'Source Serif 4',Georgia,serif;--hebrew:'Frank Ruhl Libre','Times New Roman',serif;--max:1080px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:1.1875rem;line-height:1.6;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
[lang="he"]{font-family:var(--hebrew)}
a{color:var(--navy)}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.wrap{width:100%;max-width:var(--max);margin:0 auto;padding:0 1.25rem}
.skip{position:absolute;left:-999px;top:0;background:var(--gold);color:var(--navy);padding:.6rem 1rem;z-index:100}
.skip:focus{left:.5rem}
.nowrap{white-space:nowrap}
.muted{color:var(--muted)}
.center{text-align:center}
h1,h2,h3,h4{font-family:var(--display);color:var(--navy);line-height:1.15;margin:0 0 .6em}
h2{font-size:clamp(2.1rem,5vw,2.9rem);font-weight:700;text-align:center}
h2::after{content:"";display:block;width:64px;height:2px;background:var(--gold);margin:.45em auto 0}
h3{font-size:1.75rem;font-weight:700}
h4{font-size:1.35rem;font-weight:700}

/* Header */
.site-header{position:sticky;top:0;z-index:50;background:var(--navy);color:#fff;box-shadow:0 2px 10px rgba(0,0,0,.18)}
.bsd{background:#0a1630;color:#e6d3a3;font-size:.85rem;line-height:1;padding:.3rem 0;text-align:right}
.bar{display:flex;align-items:center;gap:1rem;min-height:68px}
.brand{display:flex;align-items:center;gap:.6rem;color:#fff;text-decoration:none;margin-right:auto}
.brand img{width:52px;height:auto}
.brand-name{font-family:var(--display);font-size:1.45rem;font-weight:700;line-height:1.1}
.brand-name [lang="he"]{display:block;font-size:.95rem;font-weight:500;color:#e6d3a3}
.nav{display:flex;gap:1.5rem}
.nav a{color:#fff;text-decoration:none;font-size:1.05rem}
.nav a:hover{color:#e6d3a3}

/* Buttons */
.btn{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:.1rem;font-family:var(--body);font-weight:600;font-size:1.1rem;line-height:1.25;text-decoration:none;border-radius:6px;padding:.75rem 1.4rem;border:2px solid transparent;cursor:pointer;min-height:48px}
.btn small{font-weight:400;font-size:.85rem;opacity:.9}
.btn-gold{background:var(--gold);color:var(--navy);border-color:var(--gold)}
.btn-gold:hover{background:#d4ad57}
.btn-navy{background:var(--navy);color:#fff;border-color:var(--navy)}
.btn-navy:hover{background:var(--navy2)}
.btn-outline{background:#fff;color:var(--navy);border-color:var(--navy)}
.btn-xl{font-size:1.3rem;padding:1rem 2rem;min-height:64px}
.btn-head{padding:.55rem 1.3rem;font-size:1.05rem}

/* Hero */
.hero{position:relative;color:#fff;text-align:center;background:linear-gradient(rgba(10,21,43,.80),rgba(10,21,43,.88)),url("img/kollel-group-camera.jpg") center 35%/cover no-repeat var(--navy);padding:2.5rem 0 3.25rem}
.hero-logo{width:min(300px,70vw);margin:0 auto 1rem;filter:drop-shadow(0 6px 18px rgba(0,0,0,.45))}
.hero h1{color:#fff;font-size:clamp(2.8rem,8vw,4.4rem);margin:0 0 .15em;font-weight:700;letter-spacing:.01em}
.tagline{font-family:var(--display);font-style:italic;font-size:clamp(1.4rem,3.6vw,1.9rem);color:#e6d3a3;margin:0 0 .8rem}
.lede{font-size:1.25rem;max-width:34em;margin:0 auto 1.6rem;color:#f2ede1}
.hero-cta .btn{min-width:min(320px,100%)}

/* Dedication banner */
.dedication{background:var(--cream);border-bottom:1px solid var(--line);text-align:center;padding:1.6rem 0}
.dedication p{margin:0}
.ded-label{font-size:.95rem;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-ink);font-weight:600}
.ded-he{font-size:1.6rem;color:var(--navy);margin:.2rem 0 !important}
.ded-text{font-size:1.2rem;max-width:30em;margin:0 auto !important}

/* Sections */
.section{padding:3.5rem 0}
.section-cream{background:var(--cream);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.big{font-size:1.3rem;max-width:36em;margin:0 auto 1.5rem;text-align:center}
.facts{list-style:none;padding:0;margin:0 auto 1.75rem;max-width:34em;display:grid;gap:.55rem}
.facts li{background:#fff;border:1px solid var(--line);border-left:4px solid var(--gold);padding:.75rem 1rem;font-size:1.2rem}
.rav{text-align:center;font-size:1.25rem;margin:0 0 2rem}
.photos{display:grid;grid-template-columns:1fr;gap:.75rem}
.photos img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:6px}

/* Give */
.step{display:flex;align-items:center;gap:.6rem;font-family:var(--display);font-size:1.6rem;font-weight:700;color:var(--navy);margin:1.5rem 0 1rem}
.step .muted{font-family:var(--body);font-size:1rem;font-weight:400}
.step-n{display:inline-grid;place-items:center;width:2.1rem;height:2.1rem;border-radius:50%;background:var(--navy);color:#fff;font-family:var(--body);font-size:1.1rem;flex:none}
.opts{list-style:none;padding:0;margin:0;display:grid;gap:.75rem}
.pick{width:100%;font:inherit;color:inherit;text-align:left;background:#fff;border:2px solid var(--line);border-radius:8px;cursor:pointer}
.pick:hover{border-color:var(--gold)}
.pick.is-selected{border-color:var(--navy);box-shadow:0 0 0 3px rgba(194,154,69,.45)}
.opt{display:grid;grid-template-columns:1fr auto;grid-template-areas:"name amt" "desc amt";gap:.15rem 1rem;padding:1rem 1.15rem;align-items:center}
.opt-name{grid-area:name;font-family:var(--display);font-size:1.5rem;font-weight:700;color:var(--navy);line-height:1.2}
.opt-he{font-size:1.05rem;color:var(--gold-ink);margin-left:.5rem;font-weight:500;white-space:nowrap}
.opt-desc{grid-area:desc;color:var(--muted);font-size:1.05rem}
.opt-amt{grid-area:amt;font-size:1.45rem;font-weight:600;color:var(--navy);text-align:right;white-space:nowrap}
.opt-amt small{display:block;font-size:.8rem;font-weight:400;color:var(--muted)}
.mas-box{margin-top:1.75rem;background:#fff;border:2px solid var(--line);border-radius:8px;padding:1.25rem}
.mas-box h3{margin-bottom:.2rem}
.mas-box>p{margin:0 0 1rem}
.tier{margin-top:1rem}
.tier h4{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.25rem 1rem;border-bottom:1px solid var(--line);padding-bottom:.35rem;margin-bottom:.6rem}
.tier-price{font-family:var(--body);font-size:1.1rem;font-weight:600;color:var(--gold-ink)}
.mas-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr;gap:.5rem}
.mas{display:flex;align-items:center;gap:.6rem;padding:.7rem .9rem;border-width:1px}
.mas-en{font-weight:600;font-size:1.15rem}
.mas-he{color:var(--gold-ink);font-size:1.1rem}
.mas-price{margin-left:auto;font-weight:600;color:var(--navy)}
.selection{margin:1.5rem 0 0;background:var(--navy);color:#fff;border-radius:8px;padding:1rem 1.2rem}
.selection p{margin:.2rem 0}
.selection .muted{color:#d7dcea;font-size:1rem}
.sel-label{color:#e6d3a3}
.link-btn{background:none;border:0;color:#e6d3a3;text-decoration:underline;font:inherit;font-size:1rem;cursor:pointer;padding:.3rem 0}
.donate-btns{display:grid;gap:.9rem}
.donate-btns .btn{width:100%}
.us-panel{margin-top:1.75rem;background:#fff;border:1px solid var(--line);border-left:4px solid var(--navy);border-radius:6px;padding:1.2rem 1.25rem;scroll-margin-top:90px}
.us-panel h3{font-size:1.5rem}
.us-panel ul{margin:.5rem 0 0;padding-left:1.2rem}
.us-panel li{margin:.45rem 0}
section[id]{scroll-margin-top:80px}

/* Contact */
.contact{text-align:center}
.contact .big{margin-bottom:1rem}
.contact-btns{display:grid;gap:.75rem;max-width:420px;margin:0 auto 1rem}
.contact-btns .btn{width:100%;overflow-wrap:anywhere}

/* Footer */
.site-footer{background:var(--navy);color:#e9e4d6;text-align:center;padding:2rem 0 2.5rem}
.site-footer img{width:64px;margin:0 auto .5rem}
.site-footer p{margin:.25rem 0}
.site-footer .small{font-size:.95rem;color:#c6cbd8}

.skip-to{margin:-.5rem 0 1rem;font-size:1.1rem}
.skip-to a{color:var(--gold-ink);font-weight:600}

@media (max-width:719px){
  .nav{display:none}
  .brand-name{font-size:1.25rem}
  .brand img{width:44px}
  .photos{grid-template-columns:1fr 1fr}
  .photos img:first-child{grid-column:1 / -1}
  .opt{grid-template-columns:1fr;grid-template-areas:"name" "desc" "amt"}
  .opt-amt{text-align:left}
  .opt-amt small{display:inline;margin-left:.4rem}
}
@media (min-width:720px){
  .photos{grid-template-columns:repeat(3,1fr)}
  .opts{grid-template-columns:1fr 1fr}
  .mas-list{grid-template-columns:1fr 1fr}
  .donate-btns{grid-template-columns:1fr 1fr}
  .contact-btns{max-width:none;grid-template-columns:auto auto auto;justify-content:center}
  .contact-btns .btn{width:auto}
}
@media (min-width:1000px){
  .mas-list{grid-template-columns:repeat(3,1fr)}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* 11 Oct 2026: founder credit + dedicated masechtos */
.rav{margin-bottom:.4rem}
.founder{text-align:center;font-size:1.15rem;color:var(--muted);margin:0 0 2rem}
.contact-role{display:block;font-size:1rem;font-weight:400;color:var(--muted)}
.mas-taken{flex-wrap:wrap;background:var(--paper);border:1px solid var(--line);border-radius:8px;row-gap:.2rem}
.mas-taken .mas-en{color:var(--muted)}
.mas-taken .mas-he{color:var(--muted)}
.mas-status{margin-left:auto;font-size:.9rem;font-weight:600;color:var(--gold-ink);text-transform:uppercase;letter-spacing:.04em}
.mas-ded{flex-basis:100%;font-size:.95rem;line-height:1.4;color:var(--ink);text-align:right}

/* 11 Oct 2026: phones see the whole hero photo (no side crop) + recent group photo in About */
.hero-photo{display:none}
@media (max-width:899px){
  .hero{background:var(--navy);padding:0 0 2.75rem}
  .hero-photo{display:block;width:100%;height:auto;aspect-ratio:1800/930;object-fit:contain}
  .hero-inner{padding-top:1.5rem}
  .hero-logo{width:min(240px,62vw)}
}
.group-photo{margin:0 0 1.25rem}
.group-photo img{width:100%;height:auto;border-radius:6px}
.group-photo figcaption{text-align:center;color:var(--muted);font-size:1rem;margin-top:.5rem}

/* 11 Oct 2026: rotating dedication signs under the hero (signs.js + dedications.js) */
.signs{background:var(--navy);padding:1.4rem 0 1.6rem;text-align:center}
.signs .wrap{max-width:860px}
.signs-label{margin:0 0 .8rem;font-size:.95rem;letter-spacing:.08em;text-transform:uppercase;color:#e6d3a3;font-weight:600}
.signs-frame{position:relative;width:100%;aspect-ratio:1600/1143;border-radius:6px;overflow:hidden;box-shadow:0 8px 28px rgba(0,0,0,.45);background:#efe6d0}
.signs[data-count]:not([data-count="1"]) .signs-frame{cursor:pointer}
.sign{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity .9s ease}
.sign.is-on{opacity:1}
.signs-dots{display:flex;justify-content:center;gap:.25rem;margin-top:.55rem}
.sign-dot{width:32px;height:32px;padding:0;border:0;background:none;cursor:pointer;display:grid;place-items:center}
.sign-dot::before{content:"";width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.4)}
.sign-dot[aria-current="true"]::before{background:var(--gold)}
@media (max-width:719px){
  .signs{padding:1rem 0 1.1rem}
  .signs .wrap{padding:0 .6rem}
  .signs-frame{border-radius:4px}
}
@media (prefers-reduced-motion:reduce){.sign{transition:none}}

/* 11 Oct 2026 (later): phones go back to the faded photo BEHIND the text, text first; no separate photo block */
@media (max-width:899px){
  .hero{background:linear-gradient(rgba(10,21,43,.66),rgba(10,21,43,.80)),url("img/kollel-group-camera.jpg") center 40%/cover no-repeat var(--navy);padding:1.5rem 0 2rem}
  .hero-photo{display:none}
  .hero-inner{padding-top:0}
  .hero .hero-logo{width:min(200px,54vw);margin-bottom:.6rem}
  .hero .lede{margin-bottom:1.2rem}
}
