@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Outfit:wght@400;500;600;700;800;900&display=swap');
:root{--black:#101114;--black2:#202126;--orange:#ff7900;--orange2:#ffad55;--cream:#f8f7f5;--white:#fff;--muted:#65666c;--line:#e9e6e1}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--black);background:var(--cream);font:16px/1.65 'DM Sans',Arial,sans-serif}h1,h2,h3,.logo{font-family:'Outfit',Arial,sans-serif;line-height:1.12}h1{font-size:clamp(3.1rem,8vw,7rem);letter-spacing:-.055em;margin:0 0 20px}h2{font-size:clamp(2.1rem,4vw,3.5rem);letter-spacing:-.04em;margin:0 0 18px}h3{font-size:1.25rem;margin:0 0 12px}p{margin:0 0 18px}a{text-decoration:none;color:inherit}button,input,select{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--orange);outline-offset:3px}.wrap{width:min(1180px,calc(100% - 38px));margin:auto}.skip{position:absolute;left:10px;top:-80px;background:white;padding:12px;z-index:100}.skip:focus{top:10px}.noticebar{background:var(--orange);color:#17110d;text-align:center;padding:7px 15px;font-size:.79rem;font-weight:700}.header{position:sticky;top:0;z-index:40;background:#fffffff2;backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.headinner{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:78px}.logo{display:flex;align-items:center;gap:11px;font-size:1.65rem;font-weight:900;letter-spacing:-.05em}.logo-mark{width:46px;height:46px;background:var(--black);border-radius:13px;color:var(--orange);display:grid;place-items:center;font-size:1.35rem}.logo small{font:700 .53rem/1.25 'DM Sans',sans-serif;letter-spacing:.055em;color:var(--muted);display:block}.nav{display:flex;align-items:center;gap:5px;flex-wrap:wrap;justify-content:flex-end}.nav a{padding:9px 10px;border-radius:9px;font-weight:700;font-size:.82rem}.nav a:hover,.nav a.active{background:#fff0e2;color:#a94400}.menu{display:none;border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px 13px;font-size:1.4rem}.hero{background:var(--black);color:white;position:relative;overflow:hidden}.hero:after{content:'';position:absolute;width:550px;height:550px;border:2px solid #ff790044;border-radius:50%;right:-160px;top:30px;box-shadow:0 0 0 80px #ff790014,0 0 0 160px #ff79000a;pointer-events:none}.hero .wrap{position:relative;z-index:1;padding:115px 0 125px}.hero h1{max-width:850px}.hero h1 em{font-style:normal;color:var(--orange)}.hero p{color:#d6d2cf;max-width:580px;font-size:1.08rem}.eyebrow{color:#be5600;letter-spacing:.15em;text-transform:uppercase;font-size:.77rem;font-weight:900;margin-bottom:14px}.hero .eyebrow,.dark .eyebrow{color:var(--orange2)}.buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:27px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:47px;border-radius:999px;padding:11px 21px;font-weight:800;border:1px solid transparent;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-2px)}.btn-orange{background:var(--orange);color:#17100a}.btn-orange:hover{background:var(--orange2)}.btn-light{border-color:#ffffff70;color:white}.btn-light:hover{background:#ffffff20}.btn-dark{background:var(--black);color:#fff}.section{padding:85px 0}.section.soft{background:#f0eeea}.section.dark{background:var(--black);color:white}.lead{font-size:1.05rem;color:var(--muted);max-width:710px}.dark .lead{color:#d4ccc4}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card{border:1px solid var(--line);background:#fff;border-radius:20px;padding:27px;transition:transform .25s,box-shadow .25s;min-width:0}.card:hover{transform:translateY(-3px);box-shadow:0 14px 32px #10111412}.card p{color:var(--muted)}.card .eyebrow{margin-bottom:9px}.card a.textlink{color:#b04d00;font-weight:800}.stat{font-size:2.2rem;font-family:Outfit;font-weight:900;color:var(--orange)}.quick{margin-top:-45px;position:relative;z-index:2}.quick .card{padding:22px}.pagehero{background:var(--black);color:#fff;padding:80px 0 86px}.pagehero h1{font-size:clamp(2.8rem,6vw,5rem)}.pagehero p{color:#d5d0ca;max-width:720px}.filters{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}.field{border:1px solid #d6d2cc;background:white;border-radius:11px;padding:12px 14px;min-height:48px;min-width:175px;max-width:100%}.field.search{flex:1;min-width:200px}.tablewrap{overflow:auto;background:white;border:1px solid var(--line);border-radius:17px}table{border-collapse:collapse;width:100%;min-width:680px;text-align:left}th{background:#fff1e4;font-size:.79rem;text-transform:uppercase;letter-spacing:.06em}th,td{padding:14px 17px;border-bottom:1px solid var(--line)}tr:last-child td{border-bottom:0}tbody tr:hover{background:#fff9f2}.person{display:flex;align-items:center;gap:15px}.avatar{width:67px;height:67px;flex:none;border-radius:16px;background:#ffead5;color:#b34f00;display:grid;place-items:center;font:800 1.5rem Outfit;overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.mediaimg{height:190px;background:linear-gradient(140deg,#161719,#463024 70%,#ff7900);border-radius:13px;margin-bottom:20px;overflow:hidden;display:grid;place-items:center;color:#ffd1a5;font-size:2.5rem}.mediaimg img{width:100%;height:100%;object-fit:cover}.muted{color:var(--muted)}.pill{display:inline-block;background:#fff1e5;color:#a44700;border-radius:99px;padding:4px 10px;font-size:.77rem;font-weight:800}.callout{padding:20px 23px;background:#fff1e5;border-left:4px solid var(--orange);border-radius:0 13px 13px 0;margin:25px 0}.empty{padding:25px;background:#fff;border:1px dashed #d2c9bd;border-radius:15px;color:var(--muted)}.socials{display:flex;flex-wrap:wrap;gap:12px}.socials a{background:#fff;border:1px solid var(--line);border-radius:12px;padding:13px 19px;font-weight:800}.socials a:hover{border-color:var(--orange)}.footer{background:#0b0c0e;color:#fff;padding:58px 0 25px}.footergrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:25px}.footer .logo small{color:#b8b0a9}.footerlinks{display:grid;gap:10px}.footer a:hover{color:var(--orange2)}.copyright{border-top:1px solid #ffffff2b;padding-top:22px;margin-top:35px;color:#aaa;font-size:.83rem}.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}.reveal.visible{opacity:1;transform:none}.tiny{font-size:.85rem}.columns{display:grid;grid-template-columns:1.15fr .85fr;gap:25px}.hero-photo{position:absolute;inset:0;background:linear-gradient(90deg,#101114fa,#1011149c),var(--hero-img);background-size:cover;background-position:center;opacity:.7}.hero .wrap{isolation:isolate}.sponsor{max-height:80px;max-width:180px;object-fit:contain}.footer .socials a{background:#252525;border-color:#444}
@media(max-width:1050px){.menu{display:block}.nav{display:none;position:absolute;left:0;right:0;top:100%;background:white;padding:12px 20px 20px;box-shadow:0 15px 30px #0002;flex-direction:column;align-items:stretch}.nav.open{display:flex}.nav a{padding:12px;font-size:1rem}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.wrap{width:min(100% - 30px,1180px)}.headinner{min-height:68px}.logo{font-size:1.35rem}.logo-mark{width:40px;height:40px}.hero .wrap{padding:88px 0 105px}.section{padding:65px 0}.grid,.grid.two,.columns,.footergrid{grid-template-columns:1fr}.quick{margin-top:-27px}.card{padding:22px}.pagehero{padding:60px 0}.hero:after{width:340px;height:340px;right:-190px}.field{width:100%}.footergrid{gap:35px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}
/* Contact email - text instead of button */
.contact-email {
  margin-top: 20px;
  font-size: 18px;
  color: #151619;
}

.contact-email a {
  color: #e66b00;
  font-weight: 600;
  text-decoration: none;
  overflow-wrap: anywhere;
}

.contact-email a:hover {
  text-decoration: underline;
}

/* MJRTFC Header Logo */
.site-logo {
  display: block;
  width: 64px;
  height: 64px;
  object-fit: contain;
  flex-shrink: 0;
}

/* Logo and text alignment */
.logo {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

/* Mobile responsive logo */
@media (max-width: 600px) {
  .site-logo {
    width: 45px;
    height: 45px;
  }

  .logo {
    gap: 8px;
  }
}

/* ==================================
   MJRTFC HOMEPAGE GLASS DESIGN
   ================================== */

/* Hero background */
.hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: #101114;
  color: #fff;
  min-height: 620px;
  display: flex;
  align-items: center;
}

/* Background photograph */
.hero-photo {
  position: absolute;
  inset: 0;
  z-index: -2;
  background-image: var(--hero-img);
  background-size: cover;
  background-position: center;
}

/* Dark gradient for readability */
.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(
    90deg,
    rgba(10, 11, 14, 0.86),
    rgba(10, 11, 14, 0.35)
  );
}

/* Glass text container */
.hero > .wrap {
  position: relative;
  width: 100%;
  margin-top: 55px;
  margin-bottom: 55px;
  padding: 40px;
  border-radius: 24px;
  background: rgba(20, 21, 24, 0.62);
  border: 1px solid rgba(255, 255, 255, 0.18);
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.25);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}

/* Orange hero heading */
.hero h1 em {
  color: #ff7900;
  font-style: normal;
}

/* Glass homepage quick-link cards */
.quick .card {
  background: rgba(25, 26, 30, 0.94);
  color: #fff;
  border: 1px solid rgba(255, 121, 0, 0.2);
  transition:
    transform 0.25s ease,
    border-color 0.25s ease;
}

.quick .card h3 {
  color: #fff;
}

.quick .card p {
  color: #d1d1d1;
}

@media (hover: hover) {
  .quick .card:hover {
    transform: translateY(-5px);
    border-color: #ff7900;
  }
}

/* Tablet and mobile */
@media (max-width: 768px) {
  .hero {
    min-height: 520px;
  }

  .hero > .wrap {
    margin-top: 25px;
    margin-bottom: 25px;
    padding: 24px;
    border-radius: 18px;
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
  }

  .hero h1 {
    font-size: clamp(2.5rem, 10vw, 4.5rem);
  }

  .hero-photo {
    background-position: center;
  }
}

/* Accessibility */
@media (prefers-reduced-motion: reduce) {
  .quick .card {
    transition: none;
  }
}

/* MJRTFC homepage image visibility fix */

.hero {
  position: relative;
  isolation: isolate;
}

/* Background photo */
.hero .hero-photo {
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image: var(--hero-img);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* Dark transparent overlay */
.hero::before {
  z-index: 1;
  background: linear-gradient(
    90deg,
    rgba(10, 11, 14, 0.72) 0%,
    rgba(10, 11, 14, 0.38) 100%
  );
  pointer-events: none;
}

/* Keep glass content above the image */
.hero > .wrap {
  position: relative;
  z-index: 2;
  background: rgba(20, 21, 24, 0.48);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

/* =========================================
   MJRTFC - SPLIT GLASS HOMEPAGE V2
   ========================================= */

/* Main hero area */
body[data-page="home"] .hero {
  position: relative;
  isolation: isolate;
  min-height: 650px;
  display: flex;
  align-items: center;
  overflow: hidden;
  background: #101114;
}

/* Clear background photograph */
body[data-page="home"] .hero .hero-photo {
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image: var(--hero-img);
  background-size: cover;
  background-position: center 35%;
  background-repeat: no-repeat;
  filter: none;
  opacity: 1;
}

/* Subtle gradient, darker on the left */
body[data-page="home"] .hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(
    90deg,
    rgba(8, 9, 12, 0.55) 0%,
    rgba(8, 9, 12, 0.15) 55%,
    rgba(8, 9, 12, 0.05) 100%
  );
  pointer-events: none;
}

/* Left frosted-glass content panel */
body[data-page="home"] .hero > .wrap {
  position: relative;
  z-index: 2;

  width: min(600px, calc(100% - 48px));
  max-width: 600px;
  margin: 55px auto 55px max(24px, calc((100vw - 1200px) / 2));

  padding: 42px;
  border-radius: 24px;

  background: rgba(15, 16, 20, 0.76);
  border: 1px solid rgba(255, 255, 255, 0.18);

  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);

  box-shadow: 0 25px 65px rgba(0, 0, 0, 0.35);
}

/* Headline sizing */
body[data-page="home"] .hero h1 {
  font-size: clamp(3rem, 5vw, 5.8rem);
  line-height: 1.02;
  letter-spacing: -0.045em;
  margin: 22px 0;
}

/* Orange highlight */
body[data-page="home"] .hero h1 em {
  color: #ff7900;
  font-style: normal;
}

/* Description */
body[data-page="home"] .hero p {
  color: #e6e6e6;
  max-width: 490px;
  line-height: 1.7;
}

/* Button spacing */
body[data-page="home"] .hero .buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

/* Homepage cards */
body[data-page="home"] .quick .card {
  background: rgba(25, 26, 30, 0.96);
  border: 1px solid rgba(255, 121, 0, 0.3);
  border-radius: 18px;
  transition:
    transform 0.25s ease,
    border-color 0.25s ease,
    box-shadow 0.25s ease;
}

@media (hover: hover) {
  body[data-page="home"] .quick .card:hover {
    transform: translateY(-5px);
    border-color: #ff7900;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.16);
  }
}

/* Tablet */
@media (max-width: 1024px) {
  body[data-page="home"] .hero {
    min-height: 600px;
  }

  body[data-page="home"] .hero > .wrap {
    width: min(540px, calc(100% - 40px));
    margin-left: 20px;
    padding: 32px;
  }
}

/* Mobile */
@media (max-width: 600px) {
  body[data-page="home"] .hero {
    min-height: 660px;
    align-items: flex-end;
  }

  body[data-page="home"] .hero .hero-photo {
    background-position: 55% center;
  }

  body[data-page="home"] .hero::before {
    background: linear-gradient(
      180deg,
      rgba(8, 9, 12, 0.05) 0%,
      rgba(8, 9, 12, 0.35) 45%,
      rgba(8, 9, 12, 0.82) 100%
    );
  }

  body[data-page="home"] .hero > .wrap {
    width: calc(100% - 28px);
    max-width: none;
    margin: 16px 14px 28px;
    padding: 24px;
    border-radius: 20px;
    background: rgba(15, 16, 20, 0.78);
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
  }

  body[data-page="home"] .hero h1 {
    font-size: clamp(2.5rem, 11vw, 4rem);
  }

  body[data-page="home"] .hero p {
    font-size: 15px;
  }

  body[data-page="home"] .hero .buttons {
    gap: 10px;
  }
}

/* Accessibility */
@media (prefers-reduced-motion: reduce) {
  body[data-page="home"] .quick .card {
    transition: none;
  }
}
/* MJRTFC mobile homepage background */
@media (max-width: 600px) {
  body[data-page="home"] .hero .hero-photo {
    background-image: url("assets/images/homepage-mobile.png");
    background-size: cover;
    background-position: center center;
  }
}
/* Desktop and tablet homepage image */
body[data-page="home"] .hero .hero-photo {
  background-image: url("assets/images/homepage-desktop.png");
  background-size: cover;
  background-position: center;
}

/* Mobile homepage image */
@media (max-width: 600px) {
  body[data-page="home"] .hero .hero-photo {
    background-image: url("assets/images/homepage-mobile.png");
    background-position: center;
  }
}
/* Mission, vision, sponsors and About Us additions */
.purpose-grid { margin-top: 28px; }
.purpose-card { padding: clamp(24px, 3vw, 42px); }
.purpose-card h3 { font-size: clamp(1.6rem, 2.7vw, 2.3rem); margin: 12px 0 18px; }
.purpose-card p { font-size: clamp(1.08rem, 1.45vw, 1.3rem); line-height: 1.7; }
.about-content { max-width: 850px; padding: clamp(24px, 4vw, 48px); }
.about-content p { font-size: clamp(1.06rem, 1.5vw, 1.25rem); line-height: 1.8; }
.sponsor-area { border-top: 1px solid #383838; margin-top: 34px; padding: 28px 0 32px; }
.sponsor-area h3 { color: #fff; font-size: 1.1rem; margin: 0 0 18px; }
.sponsor-logos { display: flex; gap: 20px; align-items: center; flex-wrap: wrap; }
.sponsor-logos img { display: block; width: auto; height: 90px; max-width: 170px; object-fit: contain; background: #fff; border-radius: 10px; padding: 9px; }
@media(max-width:600px){ .sponsor-logos img { height: 76px; max-width: 145px; } }

/* MJRTFC creative polish — additive effects, original palette preserved */
.header {
  background: rgba(255,255,255,.90);
  -webkit-backdrop-filter: blur(18px) saturate(145%);
  backdrop-filter: blur(18px) saturate(145%);
  transition: background-color .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.header.is-scrolled {
  background: rgba(255,255,255,.78);
  border-bottom-color: rgba(255,121,0,.23);
  box-shadow: 0 12px 35px rgba(16,17,20,.12);
}
@media (hover:hover) {
  .card:hover, .quick .card:hover, .purpose-card:hover {
    border-color: rgba(255,121,0,.5);
    box-shadow: 0 15px 36px rgba(255,121,0,.12), 0 5px 16px rgba(16,17,20,.06);
  }
  .btn:hover, .socials a:hover {
    box-shadow: 0 7px 22px rgba(255,121,0,.23);
  }
  .nav a:hover { box-shadow: inset 0 0 0 1px rgba(255,121,0,.16); }
}
.btn, .socials a, .nav a { transition: transform .22s ease, background-color .22s ease, box-shadow .22s ease, color .22s ease; }
.reveal { transition: opacity .7s ease, transform .7s cubic-bezier(.2,.7,.2,1); }
@media (max-width:1050px) {
  .nav {
    display:flex;
    visibility:hidden;
    opacity:0;
    pointer-events:none;
    transform:translateY(-12px) scale(.985);
    transform-origin:top center;
    background:rgba(255,255,255,.96);
    -webkit-backdrop-filter:blur(20px);
    backdrop-filter:blur(20px);
    border:1px solid rgba(255,121,0,.14);
    border-radius:0 0 18px 18px;
    max-height:calc(100dvh - 78px);
    overflow-y:auto;
    transition:opacity .25s ease, transform .3s ease, visibility .3s ease;
  }
  .nav.open { visibility:visible; opacity:1; pointer-events:auto; transform:translateY(0) scale(1); }
  .menu { transition:transform .2s ease, background-color .2s ease; }
  .menu[aria-expanded="true"] { background:#fff0e2; color:#a94400; }
}
@media (prefers-reduced-motion:reduce) {
  .header, .nav, .menu, .btn, .socials a, .nav a, .reveal { transition:none!important; }
  .reveal { opacity:1!important; transform:none!important; }
}
