/*
Theme Name: All Club System
Theme URI: https://allclubsystem.com/
Author: All Club System
Description: Lightweight marketing theme for All Club System.
Version: 0.3.0
Text Domain: all-club-system
*/

:root {
  --acs-navy: #071b4d;
  --acs-blue: #0d47a1;
  --acs-blue-2: #1976d2;
  --acs-teal: #00bbaa;
  --acs-teal-dark: #07978b;
  --acs-ink: #162033;
  --acs-muted: #627086;
  --acs-light: #f5f8fc;
  --acs-line: #e3e9f2;
  --acs-white: #ffffff;
  --acs-shadow: 0 20px 60px rgba(12, 47, 112, .10);
  --acs-radius: 22px;
  --acs-radius-sm: 14px;
  --acs-max: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--acs-ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background: #fff;
  line-height: 1.6;
}
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button, input, textarea, select { font: inherit; }

.acs-container { width: min(calc(100% - 40px), var(--acs-max)); margin: 0 auto; }
.acs-section { padding: 90px 0; }
.acs-section-tight { padding: 60px 0; }
.acs-kicker { color: var(--acs-blue-2); font-size: .82rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.acs-section-title { margin: 10px 0 14px; font-size: clamp(2rem, 4vw, 3.25rem); line-height: 1.08; letter-spacing: -.035em; color: var(--acs-navy); }
.acs-section-lead { max-width: 720px; color: var(--acs-muted); font-size: 1.08rem; }
.acs-center { text-align: center; }
.acs-center .acs-section-lead { margin-left: auto; margin-right: auto; }

.acs-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  min-height: 48px; padding: 0 22px; border-radius: 999px; font-weight: 800;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
  border: 1px solid transparent; cursor: pointer;
}
.acs-btn:hover { transform: translateY(-2px); }
.acs-btn-primary { color: #fff; background: linear-gradient(135deg, var(--acs-blue), #125fe0); box-shadow: 0 10px 25px rgba(13,71,161,.23); }
.acs-btn-secondary { color: var(--acs-blue); background: #fff; border-color: #abc4f7; }
.acs-btn-teal { color: #fff; background: linear-gradient(135deg, var(--acs-teal-dark), var(--acs-teal)); }
.acs-btn-white { color: var(--acs-blue); background: #fff; }

/* Header */
.acs-header { position: sticky; top: 0; z-index: 50; background: rgba(255,255,255,.94); border-bottom: 1px solid rgba(227,233,242,.85); backdrop-filter: blur(12px); }
.acs-header-inner { min-height: 74px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.acs-brand { display:inline-flex; align-items:center; line-height:1; white-space:nowrap; }

.acs-brand-compact > img { width:38px; height:38px; object-fit:contain; }
.acs-brand-mark { width:28px; height:28px; object-fit:contain; }
.acs-nav { display: flex; align-items: center; gap: 27px; font-size: .94rem; font-weight: 650; }
.acs-nav a:hover, .acs-nav .current-menu-item > a { color: var(--acs-blue-2); }
.acs-nav ul { display: flex; gap: 25px; padding: 0; margin: 0; list-style: none; }
.acs-header-actions { display: flex; align-items: center; gap: 10px; }
.acs-login { font-weight: 700; color: var(--acs-muted); }
.acs-menu-toggle { display: none; border: 0; background: transparent; padding: 8px; color: var(--acs-navy); cursor: pointer; }

/* Hero */
.acs-hero { position: relative; overflow: hidden; padding: 74px 0 78px; background: radial-gradient(circle at 85% 10%, rgba(0,187,170,.12), transparent 34%), linear-gradient(180deg,#fff 0%,#fbfdff 100%); }
.acs-hero-grid { display: grid; grid-template-columns: 1.02fr .98fr; gap: 55px; align-items: center; }
.acs-hero h1 { margin: 12px 0 20px; color: var(--acs-navy); font-size: clamp(3.35rem, 6vw, 5.4rem); line-height: .96; letter-spacing: -.055em; }
.acs-hero-copy { max-width: 610px; color: var(--acs-muted); font-size: 1.17rem; }
.acs-hero-actions { margin-top: 30px; display: flex; gap: 12px; flex-wrap: wrap; }
.acs-proof { margin-top: 35px; padding-top: 24px; border-top: 1px solid var(--acs-line); display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.acs-proof-item { display: flex; align-items: center; gap: 10px; color: #42506a; font-size: .86rem; font-weight: 700; }
.acs-proof-icon { width: 34px; height: 34px; border-radius: 50%; background: #eaf9f7; color: var(--acs-teal-dark); display: grid; place-items: center; font-weight: 900; }

.acs-hero-collage { position: relative; min-height: 555px; }
.acs-photo { position: absolute; overflow: hidden; border-radius: 26px; box-shadow: var(--acs-shadow); background-size: cover; background-position: center; }
.acs-photo-main { left: 0; bottom: 0; width: 76%; height: 76%; background-image: linear-gradient(135deg,rgba(7,27,77,.03),rgba(0,187,170,.08)), url('https://images.unsplash.com/photo-1526232761682-d26e03ac148e?auto=format&fit=crop&w=1400&q=82'); }
.acs-photo-swim { right: 0; top: 0; width: 49%; height: 38%; background-image: url('https://images.unsplash.com/photo-1778141580577-a11dfebb96cc?auto=format&fit=crop&w=900&q=82'); }
.acs-photo-karate { right: 0; top: 41%; width: 40%; height: 31%; background-image: url('https://images.unsplash.com/photo-1769095213266-4e8a64c8f874?auto=format&fit=crop&w=700&q=82'); background-position: 50% 25%; }
.acs-photo-ninja { right: 5%; bottom: 0; width: 42%; height: 25%; background-image: url('https://images.unsplash.com/photo-1757988668896-8726f1ae3464?auto=format&fit=crop&w=900&q=82'); }
.acs-float-card { position: absolute; left: -28px; top: 55px; width: 190px; background: rgba(255,255,255,.96); border: 1px solid #e9eef6; border-radius: 18px; padding: 15px; box-shadow: 0 16px 40px rgba(8,33,80,.14); }
.acs-float-card strong { display: block; color: var(--acs-navy); font-size: 1.5rem; line-height: 1; }
.acs-float-card span { color: var(--acs-muted); font-size: .78rem; }

/* Feature cards */
.acs-features { background: var(--acs-light); }
.acs-grid-4 { display: grid; grid-template-columns: repeat(4,1fr); gap: 18px; margin-top: 38px; }
.acs-feature-card { background: #fff; border: 1px solid var(--acs-line); border-radius: 18px; padding: 25px 22px; min-height: 210px; box-shadow: 0 6px 20px rgba(10,50,110,.04); transition: transform .2s ease, box-shadow .2s ease; }
.acs-feature-card:hover { transform: translateY(-4px); box-shadow: 0 18px 36px rgba(10,50,110,.09); }
.acs-icon { width: 48px; height: 48px; border-radius: 13px; display: grid; place-items: center; margin-bottom: 18px; background: linear-gradient(135deg,#e8f0ff,#e7fbf8); color: var(--acs-blue); }
.acs-icon svg { width: 26px; height: 26px; stroke-width: 1.8; }
.acs-feature-card h3 { margin: 0 0 8px; color: var(--acs-navy); font-size: 1.08rem; }
.acs-feature-card p { margin: 0; color: var(--acs-muted); font-size: .93rem; }

/* Solutions */
.acs-solution-grid { display: grid; grid-template-columns: repeat(5,1fr); gap: 15px; margin-top: 36px; }
.acs-solution-card { position: relative; min-height: 310px; border-radius: 20px; overflow: hidden; background: var(--acs-navy); box-shadow: 0 8px 28px rgba(8,35,87,.11); }
.acs-solution-card::before { content:""; position:absolute; inset:0; background: linear-gradient(180deg,rgba(2,17,53,.02),rgba(2,17,53,.82)); z-index:1; }
.acs-solution-card .image { position:absolute; inset:0; background-size:cover; background-position:center; transform:scale(1.02); transition: transform .3s ease; }
.acs-solution-card:hover .image { transform: scale(1.08); }
.acs-solution-card .body { position:absolute; left:0; right:0; bottom:0; z-index:2; padding: 22px 18px; color:#fff; }
.acs-solution-card h3 { margin:0 0 5px; font-size:1.1rem; }
.acs-solution-card p { margin:0; opacity:.84; font-size:.84rem; }
.acs-solution-card.gym .image { background-image:url('https://images.unsplash.com/photo-1777613017000-b517b56efc3e?auto=format&fit=crop&w=900&q=82'); }
.acs-solution-card.swim .image { background-image:url('https://images.unsplash.com/photo-1778141580577-a11dfebb96cc?auto=format&fit=crop&w=900&q=82'); }
.acs-solution-card.martial .image { background-image:url('https://images.unsplash.com/photo-1769095213266-4e8a64c8f874?auto=format&fit=crop&w=700&q=82'); background-position:50% 22%; }
.acs-solution-card.ninja .image { background-image:url('https://images.unsplash.com/photo-1757988668896-8726f1ae3464?auto=format&fit=crop&w=900&q=82'); }
.acs-solution-card.community .image { background-image:url('https://images.unsplash.com/photo-1526232761682-d26e03ac148e?auto=format&fit=crop&w=900&q=82'); }

/* Dashboard mock */
.acs-product { background: linear-gradient(180deg,#fff,#f8fbff); }
.acs-dashboard-wrap { display:grid; grid-template-columns:.85fr 1.15fr; gap:60px; align-items:center; margin-top:42px; }
.acs-checks { display:grid; gap:16px; margin-top:28px; }
.acs-check { display:flex; gap:12px; color:var(--acs-muted); }
.acs-check i { width:26px;height:26px;flex:0 0 26px;border-radius:50%;display:grid;place-items:center;background:#e8f9f6;color:var(--acs-teal-dark);font-style:normal;font-weight:900; }
.acs-dashboard { background:#fff; border:1px solid #dfe7f3; border-radius:22px; box-shadow:0 24px 70px rgba(8,39,89,.13); overflow:hidden; }
.acs-dashboard-top { display:flex; align-items:center; justify-content:space-between; padding:15px 20px; border-bottom:1px solid #edf1f7; }
.acs-dash-brand { display:flex;align-items:center;gap:8px;font-size:.82rem;font-weight:850;color:var(--acs-navy); }
.acs-dashboard-main { display:grid; grid-template-columns:135px 1fr; min-height:390px; }
.acs-sidebar { background:#0a4bb9; color:#dce9ff; padding:18px 12px; }
.acs-sidebar div { padding:9px 10px; border-radius:8px; font-size:.74rem; margin-bottom:4px; }
.acs-sidebar .active { background:#fff; color:#0a4bb9; font-weight:800; }
.acs-dash-content { padding:22px; background:#fbfcff; }
.acs-dash-content h4 { margin:0; color:var(--acs-navy); }
.acs-dash-content small { color:var(--acs-muted); }
.acs-kpis { display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:18px 0; }
.acs-kpi { background:#fff;border:1px solid #ebeff5;border-radius:10px;padding:11px; }
.acs-kpi span { display:block;font-size:.65rem;color:#7a8799; }
.acs-kpi strong { font-size:1.05rem;color:var(--acs-navy); }
.acs-chart { height:150px;background:#fff;border:1px solid #ebeff5;border-radius:12px;padding:14px;position:relative;overflow:hidden; }
.acs-chart::before { content:""; position:absolute;left:15px;right:15px;bottom:35px;height:85px;background:linear-gradient(180deg,rgba(25,118,210,.11),rgba(25,118,210,.01));clip-path:polygon(0 84%,12% 70%,22% 75%,34% 48%,47% 55%,59% 30%,70% 38%,82% 15%,100% 8%,100% 100%,0 100%); }
.acs-chart-line { position:absolute;left:15px;right:15px;bottom:35px;height:85px;border-bottom:2px solid var(--acs-blue-2);clip-path:polygon(0 84%,12% 70%,22% 75%,34% 48%,47% 55%,59% 30%,70% 38%,82% 15%,100% 8%,100% 12%,82% 19%,70% 42%,59% 34%,47% 59%,34% 52%,22% 79%,12% 74%,0 88%);background:var(--acs-blue-2); }

/* Testimonials and CTA */
.acs-testimonials { background: var(--acs-light); }
.acs-testimonial-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:35px; }
.acs-testimonial { background:#fff;border:1px solid var(--acs-line);border-radius:18px;padding:24px; }
.acs-stars { color:#ffb000;letter-spacing:2px; }
.acs-testimonial p { color:#4d5c72; }
.acs-testimonial strong { color:var(--acs-navy); }
.acs-cta { padding: 40px 0 82px; }
.acs-cta-box { padding:42px 48px;border-radius:24px;background:linear-gradient(115deg,#0c4cc2,#087fd8 50%,#05b9ae);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:30px;box-shadow:0 25px 60px rgba(12,74,175,.22); }
.acs-cta-box h2 { margin:0 0 5px;font-size:2rem; }
.acs-cta-box p { margin:0;opacity:.88; }

/* Pages */
.acs-page-hero { padding:82px 0 64px;background:linear-gradient(180deg,#f7fbff,#fff);border-bottom:1px solid #edf2f8; }
.acs-page-hero h1 { margin:8px 0 12px;font-size:clamp(2.8rem,5vw,4.8rem);line-height:1;letter-spacing:-.045em;color:var(--acs-navy); }
.acs-content { padding:72px 0; }
.acs-content > .acs-container { max-width:900px; }
.acs-content h2,.acs-content h3 { color:var(--acs-navy); }
.acs-content p { color:#526076; }
.acs-content-card { background:#fff;border:1px solid var(--acs-line);border-radius:20px;padding:28px;box-shadow:0 12px 30px rgba(8,38,88,.05);margin-bottom:18px; }

/* Pricing */
.acs-pricing-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:38px; }
.acs-price-card { border:1px solid var(--acs-line);border-radius:22px;padding:30px;background:#fff;position:relative; }
.acs-price-card.featured { border:2px solid var(--acs-blue-2);box-shadow:var(--acs-shadow);transform:translateY(-8px); }
.acs-price-card .badge { position:absolute;right:20px;top:20px;background:#eaf1ff;color:var(--acs-blue);padding:5px 10px;border-radius:999px;font-size:.72rem;font-weight:800; }
.acs-price { margin:18px 0;color:var(--acs-navy);font-size:2.6rem;font-weight:900; }
.acs-price small { font-size:.85rem;color:var(--acs-muted);font-weight:600; }
.acs-price-card ul { padding:0;list-style:none;display:grid;gap:10px;color:var(--acs-muted); }
.acs-price-card li::before { content:'✓';color:var(--acs-teal-dark);font-weight:900;margin-right:8px; }

/* Form */
.acs-form-wrap { display:grid;grid-template-columns:.8fr 1.2fr;gap:45px;align-items:start; }
.acs-form { background:#fff;border:1px solid var(--acs-line);border-radius:22px;padding:30px;box-shadow:var(--acs-shadow); }
.acs-field { margin-bottom:16px; }
.acs-field label { display:block;margin-bottom:6px;font-weight:750;color:var(--acs-navy);font-size:.9rem; }
.acs-field input,.acs-field textarea,.acs-field select { width:100%;border:1px solid #ccd6e5;border-radius:11px;padding:12px 13px;background:#fff;outline:none; }
.acs-field input:focus,.acs-field textarea:focus,.acs-field select:focus { border-color:var(--acs-blue-2);box-shadow:0 0 0 3px rgba(25,118,210,.1); }
.acs-field textarea { min-height:120px;resize:vertical; }
.acs-form-grid { display:grid;grid-template-columns:1fr 1fr;gap:14px; }
.acs-notice { padding:14px 16px;border-radius:12px;margin-bottom:18px;font-weight:700; }
.acs-notice.success { background:#e7f8f4;color:#08796f; }
.acs-notice.error { background:#fff0f0;color:#a42a2a; }

/* Footer */
.acs-footer { background:#07183c;color:#c9d7ef;padding:62px 0 24px; }
.acs-footer-top { display:grid;grid-template-columns:1.45fr repeat(4,1fr);gap:35px; }
.acs-footer-brand-panel { display:inline-flex; background:#fff; padding:8px 12px; border-radius:12px; margin-bottom:10px; }
.acs-footer 
.acs-footer h4 { color:#fff;margin:2px 0 12px; }
.acs-footer ul { list-style:none;padding:0;margin:0;display:grid;gap:8px;font-size:.88rem; }
.acs-footer p { color:#9fb0cc;font-size:.9rem;max-width:320px; }
.acs-footer-bottom { margin-top:42px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between;gap:20px;color:#8fa1bf;font-size:.8rem; }

@media (max-width: 1000px) {
  .acs-nav, .acs-header-actions .acs-login { display:none; }
  .acs-menu-toggle { display:block; }
  .acs-header.mobile-open .acs-nav { display:block; position:absolute;left:20px;right:20px;top:74px;background:#fff;border:1px solid var(--acs-line);border-radius:16px;padding:18px;box-shadow:var(--acs-shadow); }
  .acs-header.mobile-open .acs-nav ul { flex-direction:column; gap:10px; }
  .acs-hero-grid,.acs-dashboard-wrap,.acs-form-wrap { grid-template-columns:1fr; }
  .acs-hero-collage { min-height:500px;margin-top:20px; }
  .acs-grid-4 { grid-template-columns:repeat(2,1fr); }
  .acs-solution-grid { grid-template-columns:repeat(2,1fr); }
  .acs-solution-card:last-child { grid-column:span 2; }
  .acs-testimonial-grid,.acs-pricing-grid { grid-template-columns:1fr; }
  .acs-price-card.featured { transform:none; }
  .acs-footer-top { grid-template-columns:2fr 1fr 1fr; }
}

@media (max-width: 680px) {
  .acs-container { width:min(calc(100% - 26px),var(--acs-max)); }
  .acs-section { padding:68px 0; }
  .acs-hero { padding:52px 0 60px; }
  .acs-hero h1 { font-size:clamp(3rem,15vw,4.2rem); }
  .acs-proof { grid-template-columns:1fr; }
  .acs-hero-collage { min-height:420px; }
  .acs-photo-main { width:88%;height:74%; }
  .acs-photo-swim { width:47%;height:34%; }
  .acs-photo-karate { width:42%;height:30%; }
  .acs-photo-ninja { width:48%;height:24%; }
  .acs-float-card { display:none; }
  .acs-grid-4,.acs-solution-grid,.acs-kpis { grid-template-columns:1fr; }
  .acs-solution-card:last-child { grid-column:auto; }
  .acs-dashboard-main { grid-template-columns:1fr; }
  .acs-sidebar { display:none; }
  .acs-form-grid { grid-template-columns:1fr; }
  .acs-cta-box { padding:32px 25px;flex-direction:column;align-items:flex-start; }
  .acs-footer-top { grid-template-columns:1fr 1fr; }
  .acs-footer-top > div:first-child { grid-column:1 / -1; }
  .acs-footer-bottom { flex-direction:column; }
}

/* v0.2.0 content + conversion additions */
.acs-soft{background:#f7faff}.acs-two-col{display:grid;grid-template-columns:1.1fr .9fr;gap:42px;align-items:start}.acs-three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px}.acs-two-col p{color:#526076;font-size:1.03rem;line-height:1.75}.acs-seo-list{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:12px;color:#526076}.acs-seo-list li{position:relative;padding-left:25px}.acs-seo-list li:before{content:'✓';position:absolute;left:0;color:var(--acs-teal-dark);font-weight:900}.acs-faq{max-width:900px;margin:30px auto 0;display:grid;gap:12px}.acs-faq details{background:#fff;border:1px solid var(--acs-line);border-radius:15px;padding:0 20px}.acs-faq summary{cursor:pointer;padding:18px 0;font-weight:800;color:var(--acs-navy)}.acs-faq p{margin:0 0 18px;color:#526076;line-height:1.7}.acs-mini-card{margin-top:28px}.acs-form-note{font-size:.78rem;color:#7b8798;line-height:1.5;margin:14px 0 0}.acs-feature-detail-grid .acs-feature-card p{line-height:1.65}.acs-solution-card .body h3{line-height:1.2}.acs-solution-card .body p{line-height:1.55}
@media(max-width:1000px){.acs-two-col,.acs-three-col{grid-template-columns:1fr}}

/* v0.2.1 conversion + industry landing pages */
.acs-solution-card{color:inherit;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease}.acs-solution-card:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(8,38,88,.12)}.acs-card-link{display:inline-block;margin-top:10px;color:var(--acs-blue);font-size:.82rem;font-weight:850}.acs-how{border-top:1px solid #edf2f8;border-bottom:1px solid #edf2f8}.acs-step-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:38px}.acs-step{background:#fff;border:1px solid var(--acs-line);border-radius:20px;padding:26px;box-shadow:0 10px 28px rgba(8,38,88,.05)}.acs-step>span{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:12px;background:linear-gradient(135deg,#e8f1ff,#e5fbf8);color:var(--acs-blue);font-weight:900;font-size:.82rem}.acs-step h3{margin:17px 0 8px;color:var(--acs-navy);font-size:1.08rem}.acs-step p{margin:0;color:#526076;line-height:1.65;font-size:.93rem}.acs-compare{background:#fff}.acs-compare-card{border:1px solid var(--acs-line);border-radius:22px;overflow:hidden;background:#fff;box-shadow:var(--acs-shadow)}.acs-compare-head,.acs-compare-row{display:grid;grid-template-columns:1fr 1fr}.acs-compare-head{background:#0a1e48;color:#fff;font-weight:850}.acs-compare-head span,.acs-compare-row span,.acs-compare-row strong{padding:16px 18px}.acs-compare-row{border-top:1px solid #e8edf5;color:#6a7688}.acs-compare-row strong{color:#087c73;background:#f2fbf9;font-weight:800}.acs-work-grid .acs-content-card{margin-bottom:0}.acs-work-grid p{color:#526076;line-height:1.65}.acs-page-hero .acs-container{max-width:980px}.acs-page-hero .acs-section-lead{max-width:820px}.acs-content-card .acs-hero-actions{margin-top:22px}
@media(max-width:1000px){.acs-step-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.acs-step-grid{grid-template-columns:1fr}.acs-compare-head,.acs-compare-row{grid-template-columns:1fr}.acs-compare-head span:first-child{border-bottom:1px solid rgba(255,255,255,.15)}.acs-compare-row strong{border-top:1px dashed #d9eee9}}


/* v0.2.3 regenerated logo handling */
.acs-brand {
    display: inline-flex;
    align-items: center;
    line-height: 1;
    white-space: nowrap;
}

.acs-brand img,
.acs-brand .custom-logo {
    display: block;
    width: auto !important;
    height: 64px !important;
    max-width: 360px !important;
    object-fit: contain;
}

.acs-header .acs-brand img,
.acs-header .acs-brand .custom-logo {
    height: 64px !important;
    max-width: 360px !important;
}

.acs-footer .acs-brand img,
.acs-footer .acs-brand .custom-logo {
    height: 52px !important;
    max-width: 320px !important;
}

@media (max-width: 900px) {
    .acs-header .acs-brand img,
    .acs-header .acs-brand .custom-logo {
        height: 52px !important;
        max-width: 300px !important;
    }
}

@media (max-width: 640px) {
    .acs-header .acs-brand img,
    .acs-header .acs-brand .custom-logo {
        height: 44px !important;
        max-width: 240px !important;
    }
}


/* v0.2.4 editable footer widgets */
.acs-footer-grid {
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr 1.2fr;
    gap: 40px;
    align-items: start;
}

.acs-footer-col,
.acs-footer-widget,
.acs-footer-default {
    min-width: 0;
}

.acs-footer-widget-title,
.acs-footer-default h3 {
    margin: 0 0 14px;
    font-size: 1rem;
    line-height: 1.3;
}

.acs-footer-widget ul,
.acs-footer-default ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.acs-footer-widget li,
.acs-footer-default li {
    margin: 0 0 9px;
}

.acs-footer-widget p,
.acs-footer-default p {
    margin: 10px 0 0;
    max-width: 34ch;
}

.acs-footer-widget a,
.acs-footer-default a {
    text-decoration: none;
}

.acs-footer-widget .widget_block {
    margin: 0;
}

@media (max-width: 900px) {
    .acs-footer-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 32px;
    }
}

@media (max-width: 640px) {
    .acs-footer-grid {
        grid-template-columns: 1fr;
        gap: 26px;
    }
}


/* =========================================================
   v0.2.6 — About page polish
   Styles the imported long-form About page without changing copy.
   Targets both /about/ and /about-2/ while the user reviews the new page.
   ========================================================= */

body.page-about .acs-main,
body.page-about-2 .acs-main,
body.page-id-2001 .acs-main {
    overflow: hidden;
}

body.page-about .entry-content,
body.page-about-2 .entry-content,
body.page-id-2001 .entry-content {
    --about-navy: #16324a;
    --about-blue: #1976d2;
    --about-teal: #00bbaa;
    --about-soft: #f5f9fc;
    --about-line: #dce8f0;
    --about-copy: #4f6575;
    color: var(--about-copy);
    font-size: 1.05rem;
    line-height: 1.78;
}

body.page-about .entry-content > .wp-block-group.alignfull,
body.page-about-2 .entry-content > .wp-block-group.alignfull,
body.page-id-2001 .entry-content > .wp-block-group.alignfull {
    margin-top: 0;
}

/* Hero image */
body.page-about .entry-content > .wp-block-group > .wp-block-image:first-child,
body.page-about-2 .entry-content > .wp-block-group > .wp-block-image:first-child,
body.page-id-2001 .entry-content > .wp-block-group > .wp-block-image:first-child {
    margin: 28px auto 48px;
    max-width: 1180px;
}

body.page-about .entry-content > .wp-block-group > .wp-block-image:first-child img,
body.page-about-2 .entry-content > .wp-block-group > .wp-block-image:first-child img,
body.page-id-2001 .entry-content > .wp-block-group > .wp-block-image:first-child img {
    width: 100%;
    border-radius: 28px;
    box-shadow: 0 22px 60px rgba(25, 76, 114, 0.14);
}

body.page-about .entry-content figcaption,
body.page-about-2 .entry-content figcaption,
body.page-id-2001 .entry-content figcaption {
    margin-top: 12px;
    color: #728493;
    font-size: .9rem;
    text-align: center;
}

/* Inner content container */
body.page-about .entry-content .wp-block-group .wp-block-group,
body.page-about-2 .entry-content .wp-block-group .wp-block-group,
body.page-id-2001 .entry-content .wp-block-group .wp-block-group {
    max-width: 1080px;
    margin-left: auto;
    margin-right: auto;
}

/* Section typography */
body.page-about .entry-content h2,
body.page-about-2 .entry-content h2,
body.page-id-2001 .entry-content h2 {
    color: var(--about-navy);
    font-size: clamp(2rem, 4vw, 3rem);
    line-height: 1.12;
    letter-spacing: -.03em;
    margin-top: 72px;
    margin-bottom: 20px;
}

body.page-about .entry-content h3,
body.page-about-2 .entry-content h3,
body.page-id-2001 .entry-content h3 {
    color: var(--about-navy);
    font-size: 1.18rem;
    line-height: 1.35;
    margin-top: 0;
    margin-bottom: 8px;
}

body.page-about .entry-content p,
body.page-about-2 .entry-content p,
body.page-id-2001 .entry-content p {
    max-width: 780px;
}

body.page-about .entry-content > .wp-block-group .wp-block-group > p,
body.page-about-2 .entry-content > .wp-block-group .wp-block-group > p,
body.page-id-2001 .entry-content > .wp-block-group .wp-block-group > p {
    margin-left: auto;
    margin-right: auto;
}

body.page-about .entry-content > .wp-block-group .wp-block-group > h2,
body.page-about-2 .entry-content > .wp-block-group .wp-block-group > h2,
body.page-id-2001 .entry-content > .wp-block-group .wp-block-group > h2 {
    text-align: center;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}

/* Infographic images */
body.page-about .entry-content .wp-block-image.alignwide,
body.page-about-2 .entry-content .wp-block-image.alignwide,
body.page-id-2001 .entry-content .wp-block-image.alignwide {
    max-width: 1180px;
    margin: 32px auto 56px;
}

body.page-about .entry-content .wp-block-image.alignwide img,
body.page-about-2 .entry-content .wp-block-image.alignwide img,
body.page-id-2001 .entry-content .wp-block-image.alignwide img {
    width: 100%;
    border-radius: 24px;
    border: 1px solid var(--about-line);
    box-shadow: 0 16px 46px rgba(30, 72, 104, 0.10);
}

/* Two-column operating-model cards */
body.page-about .entry-content .wp-block-columns,
body.page-about-2 .entry-content .wp-block-columns,
body.page-id-2001 .entry-content .wp-block-columns {
    gap: 22px;
    margin-top: 28px;
    margin-bottom: 32px;
}

body.page-about .entry-content .wp-block-column,
body.page-about-2 .entry-content .wp-block-column,
body.page-id-2001 .entry-content .wp-block-column {
    background: #fff;
    border: 1px solid var(--about-line);
    border-radius: 20px;
    padding: 26px;
    box-shadow: 0 10px 28px rgba(30, 72, 104, 0.07);
}

body.page-about .entry-content .wp-block-column p,
body.page-about-2 .entry-content .wp-block-column p,
body.page-id-2001 .entry-content .wp-block-column p {
    margin-bottom: 22px;
    font-size: .98rem;
    line-height: 1.65;
}

/* Philosophy list */
body.page-about .entry-content ul.wp-block-list,
body.page-about-2 .entry-content ul.wp-block-list,
body.page-id-2001 .entry-content ul.wp-block-list {
    max-width: 760px;
    margin: 20px auto 34px;
    list-style: none;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

body.page-about .entry-content ul.wp-block-list li,
body.page-about-2 .entry-content ul.wp-block-list li,
body.page-id-2001 .entry-content ul.wp-block-list li {
    background: linear-gradient(135deg, #f7fbff, #f1fffc);
    border: 1px solid var(--about-line);
    border-radius: 16px;
    padding: 18px 20px;
    color: var(--about-navy);
}

/* Club-type cards: both 3-card and 2-card rows */
body.page-about .entry-content .wp-block-columns .wp-block-column,
body.page-about-2 .entry-content .wp-block-columns .wp-block-column,
body.page-id-2001 .entry-content .wp-block-columns .wp-block-column {
    position: relative;
}

body.page-about .entry-content .wp-block-columns .wp-block-column::before,
body.page-about-2 .entry-content .wp-block-columns .wp-block-column::before,
body.page-id-2001 .entry-content .wp-block-columns .wp-block-column::before {
    content: "";
    display: block;
    width: 34px;
    height: 4px;
    margin-bottom: 18px;
    border-radius: 99px;
    background: linear-gradient(90deg, var(--about-blue), var(--about-teal));
}

/* Closing CTA */
body.page-about .entry-content .acs-about-cta,
body.page-about-2 .entry-content .acs-about-cta,
body.page-id-2001 .entry-content .acs-about-cta {
    max-width: 1080px !important;
    margin: 84px auto 24px !important;
    padding: clamp(32px, 6vw, 58px);
    border-radius: 28px;
    text-align: center;
    background:
        radial-gradient(circle at 10% 10%, rgba(255,255,255,.14), transparent 28%),
        linear-gradient(135deg, #1565c0 0%, #1976d2 45%, #00a99d 100%);
    color: #fff;
    box-shadow: 0 20px 54px rgba(18, 92, 145, .20);
}

body.page-about .entry-content .acs-about-cta h2,
body.page-about-2 .entry-content .acs-about-cta h2,
body.page-id-2001 .entry-content .acs-about-cta h2 {
    color: #fff;
    margin-top: 0;
    margin-bottom: 14px;
}

body.page-about .entry-content .acs-about-cta p,
body.page-about-2 .entry-content .acs-about-cta p,
body.page-id-2001 .entry-content .acs-about-cta p {
    margin-left: auto;
    margin-right: auto;
    color: rgba(255,255,255,.92);
}

body.page-about .entry-content .acs-about-cta .wp-block-buttons,
body.page-about-2 .entry-content .acs-about-cta .wp-block-buttons,
body.page-id-2001 .entry-content .acs-about-cta .wp-block-buttons {
    justify-content: center;
    margin-top: 24px;
}

body.page-about .entry-content .acs-about-cta .wp-block-button__link,
body.page-about-2 .entry-content .acs-about-cta .wp-block-button__link,
body.page-id-2001 .entry-content .acs-about-cta .wp-block-button__link {
    border-radius: 999px;
    font-weight: 700;
    padding: 13px 22px;
}

body.page-about .entry-content .acs-about-cta .wp-block-button:not(.is-style-outline) .wp-block-button__link,
body.page-about-2 .entry-content .acs-about-cta .wp-block-button:not(.is-style-outline) .wp-block-button__link,
body.page-id-2001 .entry-content .acs-about-cta .wp-block-button:not(.is-style-outline) .wp-block-button__link {
    background: #fff;
    color: #1565c0;
}

body.page-about .entry-content .acs-about-cta .is-style-outline .wp-block-button__link,
body.page-about-2 .entry-content .acs-about-cta .is-style-outline .wp-block-button__link,
body.page-id-2001 .entry-content .acs-about-cta .is-style-outline .wp-block-button__link {
    color: #fff;
    border-color: rgba(255,255,255,.78);
}

/* Hide raw page title when imported page already has a designed hero image/headline */
body.page-about-2 .entry-header,
body.page-id-2001 .entry-header {
    display: none;
}

@media (max-width: 780px) {
    body.page-about .entry-content,
    body.page-about-2 .entry-content,
    body.page-id-2001 .entry-content {
        font-size: 1rem;
    }

    body.page-about .entry-content h2,
    body.page-about-2 .entry-content h2,
    body.page-id-2001 .entry-content h2 {
        margin-top: 52px;
    }

    body.page-about .entry-content ul.wp-block-list,
    body.page-about-2 .entry-content ul.wp-block-list,
    body.page-id-2001 .entry-content ul.wp-block-list {
        grid-template-columns: 1fr;
    }

    body.page-about .entry-content .wp-block-column,
    body.page-about-2 .entry-content .wp-block-column,
    body.page-id-2001 .entry-content .wp-block-column {
        padding: 22px;
    }

    body.page-about .entry-content .acs-about-cta,
    body.page-about-2 .entry-content .acs-about-cta,
    body.page-id-2001 .entry-content .acs-about-cta {
        margin-top: 58px !important;
        border-radius: 22px;
    }
}
