/*
Theme Name: MDU Modern 1.0.4
Theme URI: https://melaniesdancers.com/
Author: MDU
Description: Modern, mobile-friendly theme for Melanie's DANCE Unlimited with easy class schedule editing.
Version: 1.0.4
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: mdu-modern
*/
:root{--navy:#062553;--deep:#031a3d;--blue:#173d89;--gold:#d89e13;--cream:#fbf8f1;--text:#10213d;--max:1180px;--shadow:0 10px 30px rgba(8,35,76,.10)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5}a{text-decoration:none;color:var(--blue)}img{max-width:100%;height:auto}.container{width:min(calc(100% - 40px),var(--max));margin:auto}.site-header{background:#fff;position:sticky;top:0;z-index:50;box-shadow:0 1px 0 rgba(9,35,75,.08)}.header-inner{min-height:82px;display:flex;align-items:center;gap:28px}.site-branding{display:flex;align-items:center;min-width:205px}.custom-logo-link img,.brand-fallback img{width:auto;max-height:62px;display:block}.primary-nav{margin-left:auto}.primary-nav ul{display:flex;gap:26px;align-items:center;list-style:none;margin:0;padding:0}.primary-nav a{font-weight:700;font-size:14px;color:var(--navy)}.header-cta{background:var(--gold);color:#fff;padding:13px 19px;border-radius:10px;font-weight:800;white-space:nowrap}.menu-toggle{display:none;margin-left:auto;border:0;background:transparent;font-size:28px;color:var(--navy)}.hero{position:relative;overflow:hidden;min-height:510px;display:flex;align-items:center;color:#fff;background:linear-gradient(90deg,rgba(3,26,61,.98),rgba(3,26,61,.94) 35%,rgba(3,26,61,.40) 62%,rgba(3,26,61,.08)),var(--hero-image) center right/cover no-repeat}.hero:after{content:"";position:absolute;left:-2%;right:-2%;bottom:-44px;height:86px;background:#fff;border-radius:50% 50% 0 0/40% 40% 0 0}.hero-inner{position:relative;z-index:2;padding:70px 0 95px}.hero-copy{max-width:520px}.script{margin:0;color:var(--gold);font-size:45px;line-height:1.05;font-family:"Brush Script MT","Segoe Script",cursive}.hero h1{margin:0 0 18px;font-size:52px;line-height:1.02;color:#fff}.hero p{font-size:17px;max-width:500px;margin:0 0 14px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 19px;border-radius:10px;font-weight:800;text-transform:uppercase;font-size:14px}.btn-gold{background:var(--gold);color:#fff}.btn-outline{border:2px solid var(--gold);color:#fff}.btn-blue{background:var(--blue);color:#fff}.section{padding:58px 0}.cream{background:var(--cream)}.section-title{text-align:center;margin-bottom:28px}.section-title h2{margin:0;color:var(--navy);font-size:30px;text-transform:uppercase}.section-title h2:before,.section-title h2:after{content:"★";color:var(--gold);font-size:18px;margin:0 10px}.class-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.class-card{background:#fff;border:1px solid #e8e6e1;border-radius:16px;box-shadow:var(--shadow);padding:22px;display:flex;flex-direction:column;min-height:245px}.class-card-top{display:flex;gap:16px}.class-icon{width:58px;height:58px;flex:0 0 58px;border-radius:50%;display:grid;place-items:center;background:var(--blue);color:#fff;font-size:25px}.class-card:nth-child(2n) .class-icon{background:var(--gold)}.class-time{font-size:13px;color:var(--blue);font-weight:800;text-transform:uppercase}.class-card h3{margin:2px 0 8px;font-size:22px;line-height:1.05;color:#0a1d3d}.class-meta{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0 10px}.badge{font-size:11px;background:#edf2fb;color:var(--blue);padding:4px 8px;border-radius:999px}.card-link{margin-top:auto;font-weight:800;font-size:13px;text-transform:uppercase}.schedule-wrap{overflow:auto;background:#fff;border-radius:14px;box-shadow:var(--shadow)}.schedule-table{width:100%;border-collapse:collapse;min-width:760px}.schedule-table th,.schedule-table td{padding:15px 16px;border-bottom:1px solid #eceff4;text-align:left}.schedule-table th{background:var(--navy);color:#fff;font-size:13px;text-transform:uppercase}.features{display:grid;grid-template-columns:repeat(4,1fr)}.feature{text-align:center;padding:28px 22px;border-right:1px solid #e4e7ec}.feature:last-child{border-right:0}.feature-symbol{font-size:34px;color:var(--gold)}.feature h3{margin:8px 0 2px;color:var(--navy);font-size:15px;text-transform:uppercase}.feature p{margin:0;font-size:13px}.page-hero{padding:55px 0;background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff}.page-hero h1{margin:0;font-size:42px}.content-area{padding:55px 0}.site-footer{background:var(--deep);color:#fff;padding-top:38px}.footer-grid{display:grid;grid-template-columns:1.35fr .8fr 1fr 1fr;gap:34px;padding-bottom:34px}.footer-logo img{max-width:155px}.footer-title{color:var(--gold);font-weight:800;text-transform:uppercase;font-size:13px}.site-footer a{color:#fff}.site-footer ul{list-style:none;margin:0;padding:0}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding:16px 0;color:#ccd5e4;font-size:12px}@media(max-width:980px){.primary-nav,.header-cta{display:none}.menu-toggle{display:block}.primary-nav.is-open{display:block;position:absolute;top:72px;left:0;right:0;background:#fff;padding:16px 20px 22px;box-shadow:0 12px 24px rgba(0,0,0,.12)}.primary-nav.is-open ul{display:block}.primary-nav.is-open li{margin:12px 0}.class-grid{grid-template-columns:1fr 1fr}.features{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:700px){.container{width:min(calc(100% - 28px),var(--max))}.hero{min-height:0;background:linear-gradient(180deg,rgba(3,26,61,.25),rgba(3,26,61,.86) 48%,rgba(3,26,61,.99)),var(--hero-image) top center/auto 330px no-repeat,var(--deep);align-items:flex-end}.hero-inner{padding:295px 0 82px}.script{font-size:35px}.hero h1{font-size:39px}.hero p{font-size:15px}.hero-actions .btn{width:100%}.section{padding:42px 0}.section-title h2{font-size:24px}.class-grid,.features,.footer-grid{grid-template-columns:1fr}.feature{border-right:0;border-bottom:1px solid #e4e7ec}.page-hero h1{font-size:34px}}


/* v1.0.4 navigation dropdowns */
.primary-nav li{position:relative}
.primary-nav .sub-menu{
  display:none;
  position:absolute;
  top:100%;
  left:0;
  min-width:220px;
  padding:10px 0;
  background:#fff;
  border-radius:10px;
  box-shadow:0 14px 30px rgba(3,26,61,.16);
  z-index:100;
}
.primary-nav li:hover > .sub-menu,
.primary-nav li:focus-within > .sub-menu{display:block}
.primary-nav .sub-menu li{margin:0}
.primary-nav .sub-menu a{
  display:block;
  padding:10px 16px;
  white-space:nowrap;
}
.primary-nav .sub-menu a:hover{background:#f5f7fb}
.primary-nav .menu-item-has-children > a:after{
  content:"⌄";
  display:inline-block;
  margin-left:5px;
  font-size:12px;
}
@media(max-width:980px){
  .primary-nav.is-open .sub-menu{
    display:block;
    position:static;
    box-shadow:none;
    padding:4px 0 4px 14px;
    min-width:0;
  }
  .primary-nav.is-open .sub-menu a{padding:7px 0}
}
