/*
Theme Name: Marines Malay Choir
Theme URI: https://marinesmalaychoir.co.za/
Author: Marines Malay Choir
Description: Custom mobile-first Marines Malay Choir website theme. Existing plugins and POS remain untouched.
Version: 1.0
*/
*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:#fff;color:#222;font-family:Arial,sans-serif;margin:0}body.home{margin:0;background:#020b16;color:#f6f7fa;font-family:Inter,Arial,sans-serif;line-height:1.55}.topbar{height:40px;background:#020914;border-bottom:1px solid #243343;display:flex;align-items:center;justify-content:space-between;padding:0 4%;font-size:12px;color:#d8dce2}.topbar a{color:#fff;text-decoration:none}.motto{color:#d9a832;font-weight:700;letter-spacing:.08em}.motto span{margin:0 10px}.social{display:flex;gap:12px}.social a{border:1px solid #6b7480;border-radius:50%;width:23px;height:23px;text-align:center;line-height:21px}.nav{height:78px;background:#03101d;display:flex;align-items:center;padding:0 4%;gap:30px;position:sticky;top:0;z-index:20;border-bottom:1px solid #263545}.brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;min-width:290px}.brand img{width:68px;height:68px;object-fit:cover;border-radius:50%;mix-blend-mode:screen}.brand strong{font-size:28px;letter-spacing:.05em;display:block}.brand span{font-size:20px;color:#d9a832;font-weight:800;letter-spacing:.08em;display:block}.nav nav{display:flex;gap:24px;align-items:center;flex:1}.nav nav a{color:#e9edf2;text-decoration:none;text-transform:uppercase;font-size:12px;font-weight:700;white-space:nowrap}.nav nav a:hover,.nav nav a.active{color:#e3262e}.nav-cta,.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:800;text-transform:uppercase;letter-spacing:.03em;border-radius:5px;padding:13px 22px}.nav-cta,.red{background:#d71920;color:#fff}.menu{display:none;background:none;color:#fff;border:0;font-size:26px}.hero{min-height:530px;display:grid;grid-template-columns:38% 62%;background:#06111e;overflow:hidden}.hero-copy{padding:75px 6% 55px;display:flex;flex-direction:column;justify-content:center;position:relative;z-index:2}.script{font-family:"Playfair Display",serif;font-size:30px;color:#d71920;font-style:italic;margin:0 0 5px}.hero h1{font-size:64px;line-height:.92;margin:0 0 25px;font-weight:900;letter-spacing:-.03em}.hero h1 span{color:#d9a832}.hero-copy>p:not(.script){color:#c8d0d9;max-width:470px}.buttons{display:flex;gap:12px;margin-top:18px}.outline{border:1px solid #9ba5af;color:#fff}.hero-image{min-height:530px;position:relative}.hero-image:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#06111e 0%,rgba(6,17,30,.3) 25%,transparent 55%);z-index:1}.hero-image img{width:100%;height:100%;object-fit:cover}.quick{max-width:1400px;margin:-1px auto 35px;display:grid;grid-template-columns:repeat(4,1fr);background:#061522;border:1px solid #354452;border-radius:8px;position:relative;z-index:3}.quick div{padding:20px 24px;border-right:1px solid #344352}.quick div:last-child{border:0}.quick b{display:block;color:#d9a832;font-size:13px}.quick span{font-size:13px;color:#b8c1cb}.cards{max-width:1400px;margin:auto;padding:0 30px 70px;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.card{background:#081727;border:1px solid #314253;border-radius:7px;overflow:hidden}.card img{width:100%;height:180px;object-fit:cover}.card div{padding:20px}.card i{color:#d71920;font-style:normal;font-weight:900}.card h3{margin:5px 0;font-size:22px}.card p{color:#aeb9c4;font-size:14px;min-height:65px}.card a{color:#e3262e;text-decoration:none;font-weight:800;font-size:13px}.about,.feature{max-width:1400px;margin:auto;padding:70px 30px;display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.about-photo img,.feature>img{width:100%;height:480px;object-fit:cover;border-radius:8px}.eyebrow{color:#d9a832;font-weight:800;letter-spacing:.12em;font-size:12px}.about h2,.feature h2,.events h2,.gallery h2,.support h2,.join h2,.contact h2{font-size:42px;line-height:1.05;margin:10px 0 20px}.about h2 span,.feature h2 span,.events h2 span,.gallery h2 span,.support h2 span{color:#d71920}.about p,.feature p,.support p,.join p,.contact p{color:#b8c1cb}.events,.gallery{padding:70px 4%;background:#071421;border-top:1px solid #1e2d3b;border-bottom:1px solid #1e2d3b}.section-head{max-width:1400px;margin:0 auto 30px;display:flex;align-items:end;justify-content:space-between}.section-head>a{color:#d9a832;text-decoration:none;font-weight:700}.event-grid{max-width:1400px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.event{background:#020c18;border:1px solid #314253;border-radius:7px;padding:22px;display:flex;gap:18px}.date{width:60px;height:70px;border:1px solid #d71920;border-radius:5px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#d9a832}.date b{font-size:22px}.date small{font-size:10px}.event h3{margin:0}.event p{margin:4px 0;color:#aeb9c4;font-size:13px}.event strong{font-size:12px;color:#fff}.feature{padding-top:90px;padding-bottom:90px}.mini{border-top:1px solid #2d3b49;padding:14px 0;display:flex;gap:20px}.mini b{width:100px;color:#d9a832}.mini span{color:#aeb9c4}.gallery-grid{max-width:1400px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.gallery-grid img{width:100%;height:260px;object-fit:cover;border-radius:6px;transition:.25s}.gallery-grid img:hover{transform:scale(1.02)}.support{padding:70px 8%;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(110deg,#071727,#020b15)}.support-actions{display:flex;gap:12px}.light{background:#fff;color:#071421}.join,.contact{max-width:1400px;margin:auto;padding:70px 30px;display:flex;justify-content:space-between;align-items:center;gap:40px}.join{border-bottom:1px solid #243443}.contact-box{display:grid;gap:12px;min-width:340px}.contact-box a{color:#fff;text-decoration:none;border:1px solid #334554;padding:14px 18px;border-radius:5px;background:#081727}footer{background:#010812;border-top:1px solid #263646;padding:35px 5%;display:grid;grid-template-columns:1fr 2fr;gap:30px;align-items:center}.footer-brand{display:flex;align-items:center;gap:14px}.footer-brand img{width:65px;height:65px;object-fit:cover;border-radius:50%}.footer-brand b,.footer-brand span{display:block}.footer-brand b{font-size:18px}.footer-brand span{color:#9da8b4;font-size:12px}.footer-links{display:flex;gap:20px;justify-content:flex-end;flex-wrap:wrap}.footer-links a{color:#c9d0d7;text-decoration:none;font-size:12px;text-transform:uppercase}.footer-links a:hover{color:#d71920}footer small{grid-column:1/-1;text-align:center;color:#66727e}.whatsapp{position:fixed;right:22px;bottom:22px;width:55px;height:55px;background:#20c763;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:30px;text-decoration:none;box-shadow:0 5px 20px #0008;z-index:30}
@media(max-width:1100px){.nav{gap:15px}.brand{min-width:220px}.brand strong{font-size:22px}.brand span{font-size:15px}.nav nav{gap:13px}.nav nav a{font-size:10px}.nav-cta{padding:10px 14px;font-size:11px}.cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.topbar{height:auto;padding:8px 16px;gap:10px;flex-wrap:wrap}.topbar .motto,.topbar .social{display:none}.nav{height:70px;padding:0 16px;justify-content:space-between}.brand{min-width:0}.brand img{width:52px;height:52px}.brand strong{font-size:19px}.brand span{font-size:12px}.menu{display:block}.nav nav{display:none;position:absolute;top:70px;left:0;right:0;background:#03101d;flex-direction:column;align-items:stretch;padding:15px 20px;border-bottom:1px solid #334454}.nav nav.open{display:flex}.nav nav a{padding:12px 0;font-size:12px}.nav-cta{display:none}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:55px 25px 35px}.hero h1{font-size:54px}.hero-image{height:310px;min-height:310px;order:-1}.hero-image:before{background:linear-gradient(180deg,rgba(6,17,30,.15),#06111e)}.quick{margin:0 16px 35px;grid-template-columns:1fr 1fr}.quick div{border-bottom:1px solid #344352}.cards{padding:0 16px 45px;grid-template-columns:1fr}.about,.feature{padding:55px 16px;grid-template-columns:1fr;gap:30px}.about-photo img,.feature>img{height:320px}.about h2,.feature h2,.events h2,.gallery h2,.support h2,.join h2,.contact h2{font-size:34px}.events,.gallery{padding:55px 16px}.section-head{display:block}.event-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-grid img{height:180px}.support,.join,.contact{padding:55px 20px;display:block}.support-actions{margin-top:25px;flex-wrap:wrap}.contact-box{margin-top:25px;min-width:0}footer{grid-template-columns:1fr;padding:30px 20px}.footer-links{justify-content:flex-start}.footer-links a{font-size:11px}.footer-brand img{width:55px;height:55px}}
@media(max-width:480px){.hero-copy{padding-top:42px}.script{font-size:23px}.hero h1{font-size:47px}.buttons{flex-direction:column}.btn{width:100%}.quick{grid-template-columns:1fr}.quick div{border-right:0}.gallery-grid{grid-template-columns:1fr}.gallery-grid img{height:220px}}

/* Keep existing Elementor/WooCommerce pages independent from the Marines homepage design. */
body:not(.home) { background:#fff; color:#222; }
body:not(.home) .wp-page-wrap { width:100%; max-width:none; margin:0; padding:0; }
body:not(.home) .topbar, body:not(.home) .nav { font-family:Arial,sans-serif; }
.elementor-page .wp-page-wrap { padding:0; max-width:none; margin:0; }

/* v8 content sections */
.location{color:#d9a832!important;font-weight:800;letter-spacing:.04em}
.mission-grid{max-width:1400px;margin:auto;padding:75px 30px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.mission-grid>div{background:#081727;border:1px solid #314253;border-radius:7px;padding:28px}
.mission-grid h2,.leadership h2,.impact h2,.donate h2,.partner h2{font-size:38px;line-height:1.05;margin:10px 0 18px}
.mission-grid h2 span,.leadership h2 span,.impact h2 span,.donate h2 span,.partner h2 span{color:#d71920}
.values{display:flex;gap:9px;flex-wrap:wrap}.values b{border:1px solid #455563;border-radius:4px;padding:8px 10px;color:#d9a832;font-size:12px}
.leadership{padding:75px 4%;background:#06111e;border-top:1px solid #1e2d3b;border-bottom:1px solid #1e2d3b}
.leaders{max-width:1400px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.leaders div{background:#081727;border:1px solid #314253;border-radius:6px;padding:20px}.leaders b,.leaders span{display:block}.leaders b{color:#d9a832;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.leaders span{margin-top:7px;font-weight:700}
.impact{max-width:1400px;margin:auto;padding:75px 30px;display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:start}
.impact-list{border-top:1px solid #314253}.impact-list div{padding:17px 0;border-bottom:1px solid #314253;display:flex;gap:20px}.impact-list b{width:160px;color:#d9a832}.impact-list span{color:#aeb9c4}
.donate{max-width:1400px;margin:auto;padding:75px 30px;display:grid;grid-template-columns:1fr 360px;gap:55px;align-items:center}
.certificate{background:#081727;border:1px solid #314253;border-radius:8px;padding:18px;text-align:center}.certificate img{width:100%;max-width:260px;height:auto;background:#fff}.certificate b,.certificate span{display:block}.certificate b{margin-top:14px}.certificate span{color:#aeb9c4;font-size:12px;margin-top:4px}
.partner{padding:65px 8%;display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center;background:#071421;border-top:1px solid #1e2d3b;border-bottom:1px solid #1e2d3b}.partner img{width:100%;border-radius:7px}
.contact-box span{color:#aeb9c4;padding:4px 0}
.hub-grid{grid-template-columns:repeat(2,1fr)}
@media(max-width:1100px){.leaders{grid-template-columns:repeat(3,1fr)}.mission-grid{grid-template-columns:1fr}.donate{grid-template-columns:1fr}.partner{grid-template-columns:1fr}.nav nav{gap:12px}}
@media(max-width:800px){.leaders{grid-template-columns:1fr 1fr}.impact{grid-template-columns:1fr;padding:55px 16px}.mission-grid{padding:55px 16px}.donate{padding:55px 16px}.partner{padding:55px 20px}.hub-grid{grid-template-columns:1fr}.mission-grid h2,.leadership h2,.impact h2,.donate h2,.partner h2{font-size:32px}}
@media(max-width:480px){.leaders{grid-template-columns:1fr}.impact-list div{display:block}.impact-list b{display:block;width:auto;margin-bottom:5px}.certificate{padding:12px}}
