/* Load Raleway (Google Fonts) */
@import url('https://fonts.googleapis.com/css2?family=Raleway:wght@300;400;500;600;700;800&display=swap');

/* Use Raleway everywhere */
:root{ --nycr-font: "Raleway", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; }

html, body,
.site-title, .site-tagline,
h1,h2,h3,h4,h5,h6,
p, li, blockquote, figcaption,
.nav, .nav a,
.wp-block-button__link,
.entry-meta, .wp-block-post-date, .wp-block-post-author, .wp-block-post-terms,
.wp-block-query, .wp-block-post-title, .wp-block-post-excerpt {
  font-family: var(--nycr-font) !important;
}

/* Optional: heading weight/letter-spacing to match your screenshot vibe */
h1,h2,h3 { font-weight: 700; letter-spacing: .01em; }
/* ===== Global ===== */
:root{ --content-width: 1140px; --accent:#d72827; }
* { box-sizing:border-box; }
body { margin:0; background:#fff; color:#111; font-family: Georgia, "Times New Roman", serif; line-height:1.65; }
a { color: inherit; }
.site-wrap { max-width: var(--content-width); margin: 0 auto; padding: 0 16px; }
.site-title { font-size: 2rem; font-weight: 700; margin: 0.25rem 0; }
.site-tagline { color:#666; font-size: 1rem; margin-top: .25rem; }

/* ===== Header ===== */
.site-header { position: sticky; top: 0; z-index: 1000; background:#fff;
  border-bottom:1px solid #eee; box-shadow: 0 1px 2px rgba(0,0,0,.04);
}
.header-inner { display:flex; align-items:center; justify-content:space-between; padding:16px 0; gap:24px; }
.brand { display:flex; align-items:center; gap:16px; }
.brand .wp-block-site-logo img { height:auto; max-height:70px; width:auto; }

.nav { display:flex; align-items:center; gap:18px; }
.nav a { text-decoration: none; }
.nav a:hover { color: var(--accent); }
.nav .search { margin-left:6px; opacity:.9; }

/* ===== Hero slider ===== */
.nycr-hero { position:relative; margin: 24px 0 32px; }
.nycr-hero .rail { display:flex; gap:20px; overflow-x:auto; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; scroll-behavior:smooth; padding:6px 0; }
.nycr-hero .slide { min-width: calc(33.333% - 14px); scroll-snap-align:start; position:relative; background:#000; border:1px solid #ddd; }
.nycr-hero .slide img { width:100%; height:240px; object-fit:cover; display:block; }
.nycr-hero .caption {
  position:absolute; left:0; right:0; bottom:0; padding:12px 14px;
  background: linear-gradient( to top, rgba(0,0,0,.7), rgba(0,0,0,.45), rgba(0,0,0,0) );
  color:#fff; font-size: 0.95rem;
}
.nycr-hero .caption .title { color:#fff; font-weight:700; margin:0 0 4px; }
.nycr-hero .caption .excerpt { color:#eee; font-size:.9rem; line-height:1.4; max-height:3.3em; overflow:hidden; }

.nycr-hero .arrow {
  position:absolute; top:50%; transform:translateY(-50%);
  width:36px; height:36px; border-radius:999px; border:none; cursor:pointer;
  background: var(--accent); color:#fff; display:grid; place-items:center; box-shadow:0 1px 2px rgba(0,0,0,.25);
}
.nycr-hero .prev { left:-8px; }
.nycr-hero .next { right:-8px; }

@media (max-width: 1000px) {
  .nycr-hero .slide img { height:200px; }
}
@media (max-width: 800px) {
  .nycr-hero .slide { min-width: calc(50% - 12px); }
  .brand .wp-block-site-logo img { max-height:56px; }
}
@media (max-width: 520px) {
  .nycr-hero .slide { min-width: 100%; }
  .nycr-hero .prev, .nycr-hero .next { display:none; }
}

/* ===== Two-column sections under hero ===== */
.home-sections { display:grid; grid-template-columns: 1fr 1fr; gap:40px; align-items:start; margin: 8px 0 24px; }
.home-sections h2 { font-size:1.75rem; margin:0 0 6px; }
.home-sections .sep { border-left:2px dotted #ccc; height:100%; margin:0 auto; }
.home-sections .btn {
  display:inline-block; text-decoration:none; background:var(--accent); color:#fff; padding:10px 14px; border-radius:3px;
}
@media (max-width: 920px) {
  .home-sections { grid-template-columns: 1fr; }
}

/* ===== Posts list ===== */
.wp-block-post-title a { text-decoration:none; }
.entry-meta, .wp-block-post-date, .wp-block-post-author, .wp-block-post-terms { color:#666; font-size:.95rem; }
.wp-block-post-excerpt { margin: 8px 0 4px; }
.wp-block-separator { border-top:1px solid #eee; margin: 20px 0; }

/* ===== Footer ===== */
.site-footer { border-top:1px solid #eee; padding: 32px 0; color:#666; font-size:.95rem; }
/* ===== Front page bottom section (About / Request) ===== */

/* Two equal columns with a dotted vertical divider down the center */
.home-sections{
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px 48px;                 /* vertical / horizontal gap */
  align-items: start;
  margin: 8px 0 24px;
}
.home-sections::before{
  content:"";
  position:absolute; inset-block:0; left:50%;
  border-left: 2px dotted #bdbdbd; /* dotted divider */
  pointer-events:none;
}
@media (max-width: 920px){
  .home-sections{ grid-template-columns:1fr; }
  .home-sections::before{ display:none; }     /* hide divider on mobile */
}

/* Typography to match the original feel */
.home-sections h2{
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 700;
  font-size: 2.25rem;             /* big section titles */
  line-height: 1.25;
  margin: 0 0 12px;
}
.home-sections p{
  color:#111;
  font-size: 1.15rem;             /* roomy body copy */
  line-height: 1.9;
  letter-spacing: .005em;
  margin: 0 0 1.1rem;
}

/* Red uppercase buttons with the round-arrow icon */
.home-sections .wp-block-buttons{ margin-top: 18px; }
.home-sections .wp-block-button__link{
  background: #d72827;            /* NYCR red */
  color:#fff;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: .04em;
  font-size: .95rem;
  line-height: 1;
  padding: 12px 16px;
  border-radius: 3px;
  border: none;
  box-shadow: none;
  text-decoration: none;
}
.home-sections .wp-block-button__link:hover{
  filter: saturate(105%) brightness(.98);
}

/* Add the white round arrow at the end of the button label */
.home-sections .wp-block-button__link::after{
  content:"";
  display:inline-block;
  width:20px; height:20px;
  margin-left:10px;
  vertical-align:-4px;
  background-repeat:no-repeat;
  background-size:contain;
  /* white circle + red chevron (inline SVG) */
  background-image:url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'>\
<circle cx='12' cy='12' r='11' fill='white'/>\
<path d='M10 7l5 5-5 5' stroke='%23d72827' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/>\
</svg>");
}
/* Native sticky header */
.site-header{
  position: sticky;
  top: 0;
  z-index: 1000;
  background:#fff;
  border-bottom:1px solid #eee;
  box-shadow:0 1px 2px rgba(0,0,0,.04);
}
/* Logged-in admin bar offsets */
body.admin-bar .site-header{ top: 32px; }
@media (max-width:782px){ body.admin-bar .site-header{ top: 46px; } }

/* Make sure no ancestor blocks sticky */
html, body, .wp-site-blocks { overflow: visible; }
