/*
Theme Name: Astra Child - CMAA Softwares
Template: astra
Description: CMAA Softwares brand styling on top of Astra.
Version: 1.0.0
*/

/* ===== Header branding ===== */
.ast-site-identity .site-title,
.ast-site-identity .site-title a{
  color:var(--ast-global-color-0) !important;
}
.ast-site-identity .ast-site-title-wrap{display:flex;align-items:center;gap:10px;}
.ast-site-identity img.custom-logo{max-height:42px;width:auto;}

/* No underlines anywhere in page content by default (buttons, inline text links, footer). */
.entry-content a{text-decoration:none;}

/* ===== Page section components (prefixed cmaa- to avoid collisions) ===== */

.cmaa-eyebrow{
  display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;
  color:var(--ast-global-color-0);background:rgba(221,24,59,0.10);
  padding:7px 13px;border-radius:20px;margin-bottom:20px;
}
.cmaa-eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--ast-global-color-0);display:inline-block;}

.cmaa-hero{padding:56px 0 30px;}
.cmaa-hero-grid{display:grid;grid-template-columns:1.05fr 0.95fr;gap:54px;align-items:center;}
@media (max-width:920px){.cmaa-hero-grid{grid-template-columns:1fr;}}

.cmaa-hero h1{font-size:clamp(30px,4vw,44px);line-height:1.15;color:var(--ast-global-color-2);margin-bottom:18px;max-width:15ch;}
.cmaa-hero p.cmaa-lead{color:var(--ast-global-color-8);font-size:16.5px;max-width:44ch;margin-bottom:28px;}

.cmaa-actions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:8px;}
.cmaa-btn{font-size:14px;font-weight:700;padding:13px 24px;border-radius:100px;display:inline-block;text-decoration:none;}
.cmaa-btn-primary{background:var(--ast-global-color-0);color:#fff;box-shadow:0 10px 24px -12px var(--ast-global-color-0);}
.cmaa-btn-primary:hover{background:var(--ast-global-color-1);color:#fff;}
.cmaa-btn-ghost{background:#fff;color:var(--ast-global-color-2);border:1.5px solid var(--ast-global-color-7);}
.cmaa-btn-ghost:hover{border-color:var(--ast-global-color-2);}

.cmaa-hero-card{
  background:#fff;border:1px solid var(--ast-global-color-7);border-radius:20px;padding:8px;
  box-shadow:0 20px 44px -28px rgba(36,47,101,0.35);
}
.cmaa-hero-card-head{padding:16px 18px 12px;font-size:12px;font-weight:700;color:var(--ast-global-color-8);text-transform:uppercase;letter-spacing:0.05em;}
.cmaa-prow{display:grid;grid-template-columns:42px 1fr auto;gap:13px;align-items:center;padding:13px 14px;border-radius:13px;}
.cmaa-prow + .cmaa-prow{border-top:1px solid var(--ast-global-color-7);}
.cmaa-picon{width:42px;height:42px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;}
.cmaa-picon.red{background:rgba(221,24,59,0.10);color:var(--ast-global-color-0);}
.cmaa-picon.navy{background:rgba(36,47,101,0.08);color:var(--ast-global-color-2);}
.cmaa-picon img{width:100%;height:100%;object-fit:contain;border-radius:inherit;}
.cmaa-prow .n{font-size:14.5px;font-weight:700;color:var(--ast-global-color-2);}
.cmaa-prow .m{font-size:12px;color:var(--ast-global-color-8);margin-top:1px;}
.cmaa-badge{font-size:10.5px;font-weight:800;padding:5px 11px;border-radius:20px;white-space:nowrap;}
.cmaa-badge.live{background:#DCF3E8;color:#1F8A5F;}
.cmaa-badge.dev{background:#FDEFE3;color:#B4661C;}

.cmaa-section{padding:60px 0;border-top:1px solid var(--ast-global-color-7);}
.cmaa-section h2{font-size:clamp(24px,3vw,32px);color:var(--ast-global-color-2);max-width:18ch;margin-bottom:14px;}
.cmaa-section p.cmaa-section-lead{color:var(--ast-global-color-8);font-size:15px;max-width:56ch;margin-bottom:36px;}

.cmaa-why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
@media (max-width:820px){.cmaa-why-grid{grid-template-columns:1fr;}}
.cmaa-why-card{background:var(--ast-global-color-6);border-radius:16px;padding:24px 22px;}
.cmaa-why-card .ic{width:38px;height:38px;border-radius:10px;background:#fff;display:flex;align-items:center;justify-content:center;margin-bottom:14px;font-size:17px;}
.cmaa-why-card h3{font-size:15.5px;color:var(--ast-global-color-2);margin-bottom:8px;}
.cmaa-why-card p{font-size:13.5px;color:var(--ast-global-color-8);margin:0;}

.cmaa-pgrid{display:grid;grid-template-columns:repeat(auto-fit, minmax(260px, 1fr));gap:20px;margin-bottom:16px;}

.cmaa-pcard{
  position:relative;
  background:#fff;border:1px solid var(--ast-global-color-7);border-radius:18px;padding:28px;
  display:flex;flex-direction:column;align-items:flex-start;gap:14px;height:100%;
}
.cmaa-pcard .cmaa-picon{width:52px;height:52px;font-size:18px;}
.cmaa-pcard h3{font-size:18px;color:var(--ast-global-color-2);margin-bottom:4px;}
.cmaa-pcard .cat{font-size:11.5px;color:var(--ast-global-color-8);font-weight:700;text-transform:uppercase;letter-spacing:0.04em;margin-bottom:10px;}
.cmaa-pcard p.d{font-size:14px;color:var(--ast-global-color-8);margin:0;flex:1;}
.cmaa-pcard-cta{margin-top:auto;padding-top:6px;width:100%;}
.cmaa-pcard-cta .cmaa-btn-sm{width:100%;text-align:center;}
.cmaa-pcard-cta .cmaa-badge{position:absolute;top:20px;right:20px;}
.cmaa-btn-sm{font-size:13px;font-weight:700;padding:10px 18px;border-radius:100px;white-space:nowrap;text-decoration:none;display:inline-block;}
.cmaa-btn-sm.solid{background:var(--ast-global-color-2);color:#fff;}
.cmaa-btn-sm.solid:hover{background:var(--ast-global-color-0);color:#fff;}
.cmaa-btn-sm.outline{border:1.5px solid var(--ast-global-color-7);color:var(--ast-global-color-2);}
.cmaa-btn-sm.outline:hover{border-color:var(--ast-global-color-2);}

.cmaa-cta-box{background:var(--ast-global-color-2);border-radius:22px;padding:52px 40px;text-align:center;}
.cmaa-cta-box h2{color:#fff;font-size:clamp(24px,3vw,32px);margin-bottom:12px;max-width:20ch;margin-left:auto;margin-right:auto;}
.cmaa-cta-box p{color:rgba(255,255,255,0.72);font-size:15px;margin-bottom:26px;}
.cmaa-cta-box .cmaa-btn-primary{box-shadow:0 10px 24px -12px rgba(221,24,59,0.6);}

/* ===== Feature checklist (used in Free vs Pro comparison) ===== */
.cmaa-check-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
.cmaa-check-list li{font-size:13.5px;color:var(--ast-global-color-3);padding-left:26px;position:relative;line-height:1.5;}
.cmaa-check-list li::before{
  content:"✓";position:absolute;left:0;top:0;
  width:18px;height:18px;border-radius:50%;background:var(--ast-global-color-6);
  color:var(--ast-global-color-0);font-size:11px;font-weight:800;
  display:flex;align-items:center;justify-content:center;
}

/* ===== Free vs Pro comparison cards ===== */
.cmaa-compare-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));gap:24px;align-items:stretch;}
.cmaa-compare-card{
  background:#fff;border:1px solid var(--ast-global-color-7);border-radius:20px;padding:30px;
  display:flex;flex-direction:column;gap:18px;height:100%;
}
.cmaa-compare-card.pro{border-color:var(--ast-global-color-0);box-shadow:0 20px 44px -30px rgba(221,24,59,0.4);}
.cmaa-compare-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;}
.cmaa-compare-head h3{font-size:19px;color:var(--ast-global-color-2);}
.cmaa-compare-head .price{font-size:13px;font-weight:700;color:var(--ast-global-color-8);}
.cmaa-check-list{flex:1;}
.cmaa-compare-card > .cmaa-btn-sm{margin-top:auto;}

/* Pro plan's per-site-count tier picker: three mini-cards side by side, not stacked bars */
.cmaa-tier-picker{display:grid;grid-template-columns:repeat(3, 1fr);gap:10px;}
@media (max-width:560px){.cmaa-tier-picker{grid-template-columns:1fr;}}
.cmaa-tier-row{
  display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;
  border:1px solid var(--ast-global-color-7);border-radius:12px;padding:14px 10px;
  text-decoration:none;transition:border-color .15s ease, background .15s ease;
}
.cmaa-tier-row:hover{border-color:var(--ast-global-color-0);background:rgba(221,24,59,0.04);}
.cmaa-tier-row .t{font-size:12.5px;font-weight:700;color:var(--ast-global-color-2);}
.cmaa-tier-row .s{font-size:10.5px;color:var(--ast-global-color-8);}
.cmaa-tier-row .p{font-size:14px;font-weight:800;color:var(--ast-global-color-0);margin-top:4px;}

/* ===== Scroll reveal utility ===== */
.cmaa-reveal{opacity:0;transform:translateY(16px);transition:opacity .6s ease, transform .6s ease;}
.cmaa-reveal.cmaa-in{opacity:1;transform:none;}
@media (prefers-reduced-motion: reduce){
  .cmaa-reveal{opacity:1;transform:none;transition:none;}
}

/* ===== Section intro + side visual layout ===== */
.cmaa-intro-grid{display:grid;grid-template-columns:1.1fr 0.9fr;gap:48px;align-items:center;margin-bottom:36px;}
@media (max-width:820px){.cmaa-intro-grid{grid-template-columns:1fr;}}
.cmaa-intro-grid h2,
.cmaa-intro-grid p.cmaa-section-lead{margin-bottom:0;}

/* Widget: desk checklist (animated, "Software built by..." section) */
.cmaa-desk-widget{
  background:#fff;border:1px solid var(--ast-global-color-7);border-radius:20px;padding:26px;
  box-shadow:0 20px 44px -30px rgba(36,47,101,0.3);display:flex;flex-direction:column;gap:12px;
}
.cmaa-desk-widget .head{font-size:11px;font-weight:700;color:var(--ast-global-color-8);text-transform:uppercase;letter-spacing:0.06em;margin-bottom:4px;}
.cmaa-desk-card{
  display:flex;align-items:center;gap:12px;background:var(--ast-global-color-6);
  border-radius:12px;padding:12px 14px;transition-delay:var(--d, 0s);
}
.cmaa-desk-check{
  width:22px;height:22px;border-radius:50%;background:var(--ast-global-color-0);color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;flex-shrink:0;
}
.cmaa-desk-card .t{font-size:13.5px;font-weight:600;color:var(--ast-global-color-2);}
.cmaa-desk-card .s{font-size:11.5px;color:var(--ast-global-color-8);margin-top:1px;}

/* Widget: status track (animated live pulse, "One live, more on the way" section) */
.cmaa-status-widget{
  background:#fff;border:1px solid var(--ast-global-color-7);border-radius:20px;padding:28px 26px;
  box-shadow:0 20px 44px -30px rgba(36,47,101,0.3);
}
.cmaa-status-track{display:flex;flex-direction:column;}
.cmaa-status-node{display:flex;align-items:center;gap:14px;padding:10px 0;}
.cmaa-status-node .dot-wrap{width:16px;height:16px;position:relative;flex-shrink:0;}
.cmaa-status-node .dot{
  width:10px;height:10px;border-radius:50%;position:absolute;top:3px;left:3px;
  background:var(--ast-global-color-7);
}
.cmaa-status-node.live .dot{background:#1F8A5F;}
.cmaa-status-node.live .dot-wrap::before{
  content:"";position:absolute;inset:0;border-radius:50%;background:#1F8A5F;opacity:0.5;
  animation:cmaa-pulse 1.8s ease-out infinite;
}
@keyframes cmaa-pulse{
  0%{transform:scale(1);opacity:0.5;}
  100%{transform:scale(2.4);opacity:0;}
}
@media (prefers-reduced-motion: reduce){
  .cmaa-status-node.live .dot-wrap::before{animation:none;}
}
.cmaa-status-node .label{font-size:13.5px;font-weight:700;color:var(--ast-global-color-2);}
.cmaa-status-node .label small{display:block;font-size:11px;font-weight:600;color:var(--ast-global-color-8);margin-top:1px;}
.cmaa-status-line{width:1px;height:20px;background:var(--ast-global-color-7);margin-left:7px;}

/* Widget: build cycle (animated traveling pulse, "How we decide what to build" section) */
.cmaa-cycle-widget{
  background:#fff;border:1px solid var(--ast-global-color-7);border-radius:20px;padding:28px 26px;
  box-shadow:0 20px 44px -30px rgba(36,47,101,0.3);
}
.cmaa-cycle-node{display:flex;align-items:center;gap:12px;}
.cmaa-cycle-node .num{
  width:28px;height:28px;border-radius:50%;background:var(--ast-global-color-6);color:var(--ast-global-color-0);
  display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;flex-shrink:0;
}
.cmaa-cycle-node .label{font-size:13.5px;font-weight:700;color:var(--ast-global-color-2);}
.cmaa-cycle-node .label small{display:block;font-size:11px;font-weight:600;color:var(--ast-global-color-8);margin-top:1px;}
.cmaa-cycle-line{width:2px;height:26px;background:var(--ast-global-color-7);margin-left:13px;position:relative;overflow:visible;}
.cmaa-cycle-pulse{
  position:absolute;left:50%;top:-8px;width:6px;height:6px;border-radius:50%;
  background:var(--ast-global-color-0);transform:translateX(-50%);
  animation:cmaa-travel 2.4s ease-in-out infinite;
}
@keyframes cmaa-travel{
  0%{top:-6px;opacity:0;}
  15%{opacity:1;}
  85%{opacity:1;}
  100%{top:26px;opacity:0;}
}
@media (prefers-reduced-motion: reduce){
  .cmaa-cycle-pulse{animation:none;opacity:0;}
}

/* ===== Fluent Forms, matched to the site's design system ===== */
.cmaa-contact-form .ff-el-group{margin-bottom:18px;}
.cmaa-contact-form .ff-el-input--label{
  display:block;font-size:13px;font-weight:600;color:var(--ast-global-color-2);
  margin-bottom:6px;font-family:inherit;
}
.cmaa-contact-form .ff-el-input--label label{font-family:inherit;}
.cmaa-contact-form .ff-el-form-control{
  width:100%;padding:12px 14px;border:1px solid var(--ast-global-color-7);
  border-radius:10px;font-size:14px;font-family:inherit;background:#fff;color:var(--ast-global-color-3);
  transition:border-color .15s ease;
}
.cmaa-contact-form select.ff-el-form-control{ height:44px; }
.cmaa-contact-form textarea.ff-el-form-control{ font-family:inherit; resize:vertical; }
.cmaa-contact-form .ff-el-form-control:focus{
  outline:none;border-color:var(--ast-global-color-0);
  box-shadow:0 0 0 3px rgba(221,24,59,0.12);
}
.cmaa-contact-form .ff-btn-submit{
  width:100%;background:var(--ast-global-color-0);color:#fff;border:none;
  padding:13px 24px;border-radius:100px;font-size:14px;font-weight:700;
  font-family:inherit;cursor:pointer;transition:background .15s ease;
}
.cmaa-contact-form .ff-btn-submit:hover{background:var(--ast-global-color-1);}
.cmaa-contact-form .ff_submit_btn_wrapper{margin-top:4px;}
.cmaa-contact-form .error-message,
.cmaa-contact-form .ff-el-is-error .ff-el-form-control{
  border-color:var(--ast-global-color-0);
}
.cmaa-contact-form .ff-message-success{
  background:var(--ast-global-color-6);border-radius:12px;padding:16px;
  color:var(--ast-global-color-2);font-size:14px;
}

/* ===== Hero decorative logo mark (About Us) ===== */
.cmaa-hero-logo-mark{display:flex;align-items:center;justify-content:center;}
.cmaa-hero-logo-mark img{
  width:100%;max-width:280px;opacity:0.92;
  animation:cmaa-breathe 5s ease-in-out infinite;
}
@media (prefers-reduced-motion: reduce){
  .cmaa-hero-logo-mark img{animation:none;}
}
@keyframes cmaa-breathe{
  0%,100%{transform:scale(1) rotate(0deg);}
  50%{transform:scale(1.04) rotate(2deg);}
}

/* ===== Timeline widget: vertical, stretched to fill the height of the paired text column ("How CMAA Softwares started") ===== */
.cmaa-timeline-widget{
  background:#fff;border:1px solid var(--ast-global-color-7);border-radius:20px;padding:30px 26px;
  box-shadow:0 20px 44px -30px rgba(36,47,101,0.3);
  height:100%;display:flex;flex-direction:column;
}
.cmaa-timeline-v{display:flex;flex-direction:column;flex:1;}
.cmaa-timeline-node{display:flex;align-items:stretch;gap:14px;flex:1;}
.cmaa-timeline-node .year{width:44px;flex-shrink:0;font-weight:800;font-size:12.5px;color:var(--ast-global-color-0);padding-top:1px;}
.cmaa-timeline-dotcol{display:flex;flex-direction:column;align-items:center;flex-shrink:0;}
.cmaa-timeline-dotcol .dot-wrap{width:14px;height:14px;position:relative;flex-shrink:0;}
.cmaa-timeline-dotcol .dot{
  width:10px;height:10px;border-radius:50%;position:absolute;top:2px;left:2px;
  background:#fff;border:2px solid var(--ast-global-color-7);box-sizing:border-box;
}
.cmaa-timeline-node.now .dot{background:#1F8A5F;border-color:#1F8A5F;}
.cmaa-timeline-node.now .dot-wrap::before{
  content:"";position:absolute;inset:0;border-radius:50%;background:#1F8A5F;opacity:0.5;
  animation:cmaa-pulse 1.8s ease-out infinite;
}
@media (prefers-reduced-motion: reduce){
  .cmaa-timeline-node.now .dot-wrap::before{animation:none;}
}
.cmaa-timeline-dotcol .seg{width:1px;flex:1;background:var(--ast-global-color-7);margin-top:2px;}
.cmaa-timeline-node:last-child .cmaa-timeline-dotcol .seg{display:none;}
.cmaa-timeline-node .label{font-size:13px;font-weight:600;color:var(--ast-global-color-2);padding-top:1px;}

/* ===== Converge widget: scattered tools collapsing into one ("Built for how recruitment actually happens") ===== */
.cmaa-converge-widget{
  background:#fff;border:1px solid var(--ast-global-color-7);border-radius:20px;padding:28px;
  box-shadow:0 20px 44px -30px rgba(36,47,101,0.3);
}
.cmaa-converge-scattered{display:grid;grid-template-columns:repeat(2, 1fr);gap:10px;margin-bottom:18px;}
.cmaa-converge-tile{
  --rot:0deg;
  background:var(--ast-global-color-6);border-radius:10px;padding:10px 12px;
  font-size:12px;font-weight:700;color:var(--ast-global-color-8);
  display:flex;align-items:center;gap:8px;
  opacity:0;transform:translateY(16px) rotate(var(--rot));
  transition:opacity .5s ease, transform .5s ease;
}
.cmaa-converge-tile.cmaa-in{opacity:1;transform:translateY(0) rotate(var(--rot));}
@media (prefers-reduced-motion: reduce){
  .cmaa-converge-tile{opacity:1;transform:rotate(var(--rot));transition:none;}
}
.cmaa-converge-tile:nth-child(1){--rot:-3deg;}
.cmaa-converge-tile:nth-child(2){--rot:2deg;}
.cmaa-converge-tile:nth-child(3){--rot:2deg;}
.cmaa-converge-tile:nth-child(4){--rot:-2deg;}
.cmaa-converge-arrow{
  display:flex;justify-content:center;color:var(--ast-global-color-7);font-size:18px;margin-bottom:14px;
  animation:cmaa-bob 1.8s ease-in-out infinite;
}
@media (prefers-reduced-motion: reduce){.cmaa-converge-arrow{animation:none;}}
@keyframes cmaa-bob{0%,100%{transform:translateY(0);}50%{transform:translateY(4px);}}
.cmaa-converge-result{
  display:flex;align-items:center;gap:12px;background:var(--ast-global-color-2);border-radius:14px;padding:14px 16px;
}
.cmaa-converge-result img{width:34px;height:34px;border-radius:8px;flex-shrink:0;}
.cmaa-converge-result .t{font-size:13.5px;font-weight:800;color:#fff;}
.cmaa-converge-result .s{font-size:11px;color:rgba(255,255,255,0.7);}

/* ===== Footer ===== */
.cmaa-footer{border-top:1px solid var(--ast-global-color-7);}
.cmaa-footer-main{background:var(--ast-global-color-6);padding:56px 0 0;}
.cmaa-footer-grid{
  display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px;padding-bottom:40px;
}
@media (max-width:760px){.cmaa-footer-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:480px){.cmaa-footer-grid{grid-template-columns:1fr;}}

.cmaa-footer-logo{display:flex;align-items:center;gap:10px;margin-bottom:12px;}
.cmaa-footer-logo img{width:30px;height:30px;object-fit:contain;}
.cmaa-footer-logo span{font-family:'Nunito',sans-serif;font-weight:800;font-size:16px;color:var(--ast-global-color-2);}
.cmaa-footer-brand p{font-size:13.5px;color:var(--ast-global-color-8);max-width:34ch;margin:0 0 16px;line-height:1.6;}

.cmaa-footer-social{display:flex;gap:10px;margin-top:16px;}
.cmaa-footer-social a{
  width:34px;height:34px;border-radius:50%;background:#fff;border:1px solid var(--ast-global-color-7);
  display:flex;align-items:center;justify-content:center;color:var(--ast-global-color-2);
  transition:background .15s ease, color .15s ease, border-color .15s ease;
}
.cmaa-footer-social a svg{width:16px;height:16px;}
.cmaa-footer-social a:hover{background:var(--ast-global-color-0);border-color:var(--ast-global-color-0);color:#fff;}

.cmaa-footer-col h5{
  font-size:12px;text-transform:uppercase;letter-spacing:0.06em;font-weight:700;
  color:var(--ast-global-color-8);margin-bottom:14px;
}
.cmaa-footer-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
.cmaa-footer-col a{font-size:13.5px;color:var(--ast-global-color-2);text-decoration:none;}
.cmaa-footer-col a:hover{color:var(--ast-global-color-0);}
.cmaa-footer-col li{font-size:13.5px;color:var(--ast-global-color-2);}

.cmaa-footer-bottom{
  border-top:1px solid var(--ast-global-color-7);padding:20px 0;
  display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;
}
.cmaa-footer-bottom span{font-size:12.5px;color:var(--ast-global-color-8);}
.cmaa-footer-bottom-nav{display:flex;gap:18px;}
.cmaa-footer-bottom-nav a{font-size:12.5px;color:var(--ast-global-color-8);text-decoration:none;}
.cmaa-footer-bottom-nav a:hover{color:var(--ast-global-color-0);}
