/*
Theme Name: Antilles High School Alumni
Theme URI: https://example.com/
Author: OpenAI
Description: Custom WordPress theme for the Antilles High School Alumni Association with black and gold branding, dropdown navigation, two-column layout, alumni-focused templates, and donation/member-ready sections.
Version: 1.0.0
License: GPLv2 or later
Text Domain: antilles-hs
*/

:root {
  --ahs-black: #111111;
  --ahs-gold: #c9a227;
  --ahs-gold-light: #e3c96f;
  --ahs-cream: #f7f3e7;
  --ahs-gray: #e8e8e8;
  --ahs-white: #ffffff;
  --ahs-shadow: 0 10px 24px rgba(0,0,0,.08);
}
* { box-sizing: border-box; }
body {
  margin: 0;
  font-family: Arial, Helvetica, sans-serif;
  color: var(--ahs-black);
  background: #fafafa;
  line-height: 1.6;
}
a { color: #7a5b00; text-decoration: none; }
a:hover { text-decoration: underline; }
img { max-width:100%; height:auto; }
.site-header {
  background: linear-gradient(180deg, #000 0%, #1a1a1a 100%);
  color: var(--ahs-white);
  border-bottom: 4px solid var(--ahs-gold);
}
.header-wrap, .site-footer-wrap, .hero-inner, .page-banner-inner {
  width: min(1180px, calc(100% - 2rem));
  margin: 0 auto;
}
.site-main-wrap {
  width: 100%;
  margin: 0;
}
.branding {
  display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1rem 0;
}
.site-title { font-size: clamp(1.5rem, 2.2vw, 2.35rem); font-weight: 700; margin:0; color:#fff; }
.site-description { margin:.25rem 0 0; color:#f4e5aa; }
.brand-badge {
  background: var(--ahs-gold);
  color: #111;
  padding: .55rem .9rem;
  border-radius: 999px;
  font-weight: bold;
  white-space: nowrap;
}
.main-nav { background: #111; border-bottom: 2px solid var(--ahs-gold); }
.main-nav ul { list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; }
.main-nav li { position:relative; margin-right: 2rem; }
.main-nav > div > ul > li > a {
  display:block; padding:1rem 1.5rem; color:#fff; font-weight:600; white-space: nowrap;
}
.main-nav a:hover { background: var(--ahs-gold); color:#111; text-decoration:none; }
.main-nav ul ul {
  position:absolute; top:100%; left:0; min-width:220px; background:#1b1b1b; display:none; z-index:999;
  box-shadow: var(--ahs-shadow);
}
.main-nav ul li:hover > ul,
.main-nav ul li:focus-within > ul { display:block; }
.main-nav ul ul a { display:block; padding:.8rem 1rem; color:#fff; }
.hero {
  background: linear-gradient(135deg, rgba(201,162,39,.95), rgba(17,17,17,.95)), url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="1200" height="300"><rect width="100%" height="100%" fill="%23111111"/></svg>');
  color:#fff; padding:3rem 0;
}
.hero h2 { font-size: clamp(2rem, 4vw, 3rem); margin:0 0 .5rem; }
.hero p { max-width:780px; font-size:1.05rem; }
.hero-actions { display:flex; flex-wrap:wrap; gap:.8rem; margin-top:1rem; }
.button, button, input[type=submit] {
  background: var(--ahs-gold); color:#111; border:none; padding:.9rem 1.2rem; border-radius:8px; font-weight:700; cursor:pointer;
}
.button.alt { background:#fff; color:#111; }
.site-main-wrap { display:grid; grid-template-columns: 320px 1fr; gap:1.5rem; padding:0 0 2rem; }
.content-area, .widget-area, .card, .feature-grid article, .archive-card {
  background:#fff; border-radius:16px; box-shadow:var(--ahs-shadow);
}
.content-area { padding:1.4rem; grid-column: 2; max-width: min(1180px, calc(100% - 2rem - 320px - 1.5rem)); }
.widget-area { padding:1rem; align-self:start; grid-column: 1; }
.widget-area.debug-sidebar { border: 2px dashed #c9a227; }
.widget-area.debug-sidebar::before {
  content: "Sidebar template loaded";
  display: block;
  font-size: 0.9rem;
  font-weight: 700;
  color: #111;
  margin-bottom: 0.75rem;
}
.widget { margin-bottom:1.2rem; padding:1rem; background:var(--ahs-cream); border-radius:14px; transition: transform 0.25s ease, box-shadow 0.25s ease; }
.widget:hover { transform: translateY(-2px); box-shadow: 0 12px 24px rgba(0,0,0,0.08); }
.widget-title { margin-top:0; color:#111; border-bottom:2px solid var(--ahs-gold); padding-bottom:.45rem; font-size:1.05rem; }
.widget-description { font-size:0.95rem; color:#5c5c5c; margin-bottom:0.8rem; }
.widget ul { list-style:none; padding:0; margin:0; }
.widget ul li { padding:0.35rem 0; }
.widget ul li a { color:#7a5b00; font-weight:500; transition: color 0.2s ease; }
.widget ul li a:hover { color: var(--ahs-gold); }
.class-years-grid { display:grid; grid-template-columns:1fr 1fr; gap:0.6rem; }
.class-year-btn {
  display:block; padding:0.7rem 0.8rem; background:linear-gradient(135deg, var(--ahs-gold), rgba(201,162,39,0.85)); color:#111; text-align:center; border-radius:10px; font-weight:600; font-size:0.92rem; text-decoration:none; transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.class-year-btn:hover { transform: translateY(-2px); box-shadow: 0 10px 18px rgba(201,162,39,0.22); }
.events-list { list-style:none; margin:0; padding:0; }
.events-list li { padding:0.55rem 0; border-bottom:1px solid #e5e5e5; }
.events-list li:last-child { border-bottom:none; }
.events-list a { color:#7a5b00; text-decoration:none; }
.events-list a:hover { color: var(--ahs-gold); }
.no-events { margin:0; color:#777; font-style:italic; }
.social-links { display:flex; flex-wrap:wrap; gap:0.6rem; }
.social-icon { display:flex; align-items:center; justify-content:center; width:38px; height:38px; background:var(--ahs-gold); color:#111; border-radius:50%; font-weight:700; text-decoration:none; transition: transform 0.2s ease, background 0.2s ease; }
.social-icon:hover { transform: translateY(-2px); background:#111; color:var(--ahs-gold); }
.button-donate { display:block; padding:1rem; background: linear-gradient(135deg, var(--ahs-gold), #b88f1b); color:#111; text-align:center; font-weight:700; border-radius:10px; text-decoration:none; }
.button-donate:hover { background: linear-gradient(135deg, var(--ahs-gold-light), var(--ahs-gold)); }
.feature-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; margin-top:1.2rem; }
.feature-grid article { padding:1rem; }
.page-banner { background:#f1ead5; border-top:1px solid #eadfb8; border-bottom:1px solid #eadfb8; }
.page-banner-inner { padding:1.25rem 0; }
.entry-title { margin-top:0; }
.footer-cta { background:#111; color:#fff; padding:1.6rem; border-radius:18px; display:flex; justify-content:space-between; gap:1rem; align-items:center; }
.site-footer { background:#0d0d0d; color:#fff; margin-top:2rem; border-top:4px solid var(--ahs-gold); }
.site-footer-wrap { padding:2rem 0; }
.footer-columns { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
.footer-columns h3 { color:var(--ahs-gold-light); }
.footer-columns > div:nth-child(2) h3 {
  cursor: pointer;
  transition: color 0.2s ease;
}
.footer-columns > div:nth-child(2) h3:hover {
  color: var(--ahs-gold);
}
.footer-columns .menu,
.footer-columns ul {
  position: relative;
}
.footer-columns .menu > li,
.footer-columns ul > li {
  display: none;
  position: relative;
  margin-bottom: 0.5rem;
}
.footer-columns .menu > li > a,
.footer-columns ul > li > a {
  color: #fff;
  text-decoration: none;
  display: block;
  padding: 0.5rem 0;
  transition: color 0.2s ease;
}
.footer-columns .menu > li > a:hover,
.footer-columns ul > li > a:hover {
  color: var(--ahs-gold);
}
.footer-columns > div:nth-child(2):hover .menu > li,
.footer-columns > div:nth-child(2):hover ul > li {
  display: block;
}
.archive-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1rem; }
.archive-card { padding:1rem; }
.notice-strip { background:#f9f0c7; border-left:4px solid var(--ahs-gold); padding:1rem; border-radius:10px; margin:1rem 0; }
.search-form { display:flex; gap:.5rem; }
.search-form input[type=search] { flex:1; padding:.8rem; border:1px solid #ccc; border-radius:8px; }
@media (max-width: 900px) {
  .site-main-wrap { grid-template-columns:1fr; }
  .feature-grid, .footer-columns, .archive-grid { grid-template-columns:1fr; }
  .branding { flex-direction:column; align-items:flex-start; }
  .main-nav li { margin-right: 1rem; }
  .main-nav > div > ul > li > a { padding: 0.8rem 1rem; font-size: 0.9rem; }
  .content-area { margin-left: 0; max-width: none; }
}
