:root{
--paper:#d7b98a;
--ink:#2f2013;
--ink2:#52351f;
--accent:#b38955;
--maxw:1200px
}

*{box-sizing:border-box}

body{
margin:0;
background:#efe7d7;
color:var(--ink);
font-family:"Cinzel", serif;
line-height:1.6
}

/* ================= HEADER ================= */

header.top{
display:flex;
gap:12px;
align-items:center;
justify-content:center;
padding:14px;
border-bottom:2px solid rgba(0,0,0,.12);
background:linear-gradient(#e6cfaa,#d7b98a)
}

header.top img{
height:64px;
width:64px;
object-fit:cover;
border-radius:50%;
box-shadow:0 8px 18px rgba(0,0,0,.25)
}

header.top h1{
margin:0;
font-size:22px;
letter-spacing:.6px
}

/* ================= SCROLL CONTAINER ================= */

.scroll{
position:relative;
max-width:var(--maxw);
margin:clamp(10px,2vw,22px) auto;
background:
radial-gradient(150% 100% at 50% 18%, rgba(0,0,0,.06), transparent 48%),
radial-gradient(150% 100% at 50% 80%, rgba(0,0,0,.06), transparent 48%),
var(--paper);
border-radius:16px;
box-shadow:
0 18px 40px rgba(0,0,0,.25),
inset 0 0 0 2px rgba(0,0,0,.05)
}

.scroll::before,
.scroll::after{
content:"";
display:block;
height:70px;
background:linear-gradient(#c79a61,#af7f47);
border-bottom:3px solid rgba(0,0,0,.35);
box-shadow:inset 0 -18px 24px rgba(0,0,0,.25)
}

.scroll::after{
height:74px;
border-top:3px solid rgba(0,0,0,.35);
border-bottom:none;
transform:translateY(20px);
background:linear-gradient(#a0703f,#ba8a55);
box-shadow:
inset 0 18px 24px rgba(0,0,0,.25),
0 -8px 0 rgba(0,0,0,.05)
}

/* ================= BRAND ================= */

.brand{
display:flex;
gap:18px;
align-items:center;
padding:12px 18px
}

.crest{
width:86px;
height:86px;
border-radius:50%;
object-fit:cover;
border:2px solid rgba(0,0,0,.2);
box-shadow:0 8px 18px rgba(0,0,0,.25)
}

.titles{
display:flex;
flex-direction:column
}

.hebrew{
font-family:"Noto Serif Hebrew", serif;
font-weight:700;
letter-spacing:2px;
font-size:clamp(28px,4vw,40px)
}

.latin{
font-weight:700;
letter-spacing:1.6px;
font-size:clamp(18px,2.1vw,26px)
}

/* ================= NAVIGATION ================= */

nav.tabs{
border-top:2px solid rgba(0,0,0,.12);
border-bottom:2px solid rgba(0,0,0,.12);
background:linear-gradient(#d9bc8f,#caa872)
}

nav.tabs ul{
list-style:none;
display:flex;
gap:8px;
flex-wrap:wrap;
justify-content:center;
margin:0;
padding:8px
}

nav.tabs a{
display:block;
padding:10px 14px;
border-radius:10px;
border:1px solid rgba(0,0,0,.12);
text-decoration:none;
color:var(--ink);
background:rgba(255,255,255,.18)
}

nav.tabs a:hover{
background:rgba(255,255,255,.3)
}

/* ================= MAIN CONTENT ================= */

.sheet{
max-width:1100px;
margin:2rem auto;
padding:2rem 2.5rem;
background:rgba(255,255,255,0.08);
border:2px solid rgba(0,0,0,.12);
border-radius:14px
}

.section{
max-width:1000px;
margin:1.8rem auto;
padding:1.8rem;
border-radius:12px;
border:2px solid rgba(0,0,0,.1);
background:rgba(255,255,255,.08)
}

/* ================= BUTTONS ================= */

.btn{
display:inline-block;
padding:10px 16px;
margin:6px 8px;
border-radius:999px;
border:1px solid rgba(0,0,0,.2);
color:var(--ink);
background:linear-gradient(#f4e3c5,#d9b88b);
text-decoration:none;
box-shadow:0 4px 10px rgba(0,0,0,.12)
}

.btn:hover{
filter:brightness(1.05)
}

/* ================= CURRICULUM ================= */

.curriculum-hub{
max-width:1100px;
margin:40px auto;
padding:20px
}

.curriculum-grid{
display:flex;
gap:2rem;
flex-wrap:wrap;
margin-top:1.5rem
}

.curriculum-column{
flex:1 1 45%;
background:rgba(255,248,230,0.75);
padding:20px;
border-radius:12px;
border:2px solid #d3b88c;
box-shadow:0 0 12px rgba(0,0,0,0.15)
}

.curriculum-column h2{
color:#5b3a0c;
font-size:1.4rem;
border-bottom:2px solid #d3b88c;
padding-bottom:6px;
margin-bottom:15px
}

.curriculum-links{
list-style:none;
padding:0
}

.curriculum-links li{
margin-bottom:10px
}

.curriculum-links a{
color:#3b2608;
font-weight:600;
text-decoration:none
}

.curriculum-links a:hover{
text-decoration:underline;
color:#8d5e18
}

/* ================= PDF VIEWER ================= */

.pdf-section{
background:#f5f0e6;
border:2px solid #b89b68;
border-radius:12px;
padding:1.5rem;
margin:2rem 0;
box-shadow:0 4px 10px rgba(0,0,0,0.2)
}

.pdf-header{
text-align:center;
font-size:1.3rem;
margin-bottom:1rem
}

.pdf-viewer{
width:100%;
height:720px;
border:none;
border-radius:8px
}

@media (max-width:768px){
.pdf-viewer{height:480px}
}

/* ================= DOCTRINE LINKS ================= */

.doctrine-links{
background:rgba(0,0,0,0.85);
border-top:1px solid #C6A664;
border-bottom:1px solid #C6A664
}

.doctrine-links ul{
display:flex;
flex-wrap:wrap;
justify-content:center;
gap:1rem;
list-style:none;
padding:.5rem;
margin:0
}

.doctrine-links a{
color:#C6A664;
text-decoration:none;
font-weight:600
}

.doctrine-links a:hover{
text-decoration:underline
}

/* ================= BACK TO TOP ================= */

#topBtn{
display:none;
position:fixed;
bottom:30px;
right:30px;
background-color:#C6A664;
color:#000;
border:none;
border-radius:50%;
width:45px;
height:45px;
font-size:1.2rem;
font-weight:bold;
cursor:pointer;
z-index:10000;
box-shadow:0 4px 12px rgba(0,0,0,0.4);
transition:opacity .3s ease, transform .3s ease
}

#topBtn:hover{
background-color:#e6c878;
transform:translateY(-3px)
}

/* ================= FOOTER ================= */

footer{
padding:18px;
text-align:center;
color:#6b4b31;
font-size:14px
}
/* ===============================
   News Ticker (Marquee Replacement)
   =============================== */

.news-ticker {
  background: #3e2f1c;
  color: #fff;
  overflow: hidden;
  white-space: nowrap;
  border-top: 2px solid rgba(0,0,0,.4);
  border-bottom: 2px solid rgba(0,0,0,.4);
}

.ticker-track {
  display: inline-block;
  padding: 10px 0;
  animation: tickerScroll 28s linear infinite;
}

.ticker-track span {
  font-family: Verdana, sans-serif;
  font-size: 18px;
  padding-left: 100%;
}

/* scrolling animation */

@keyframes tickerScroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}

/* mobile speed adjustment */

@media (max-width:768px){
  .ticker-track {
    animation-duration: 18s;
  }
}
.news-ticker:hover .ticker-track {
  animation-play-state: paused;
}