
/**
 * AXI Trimmed CSS
 * Based on Bootslander (BootstrapMade) — unnecessary sections removed.
 * Includes: variables, header/nav, hero (no waves), about, features, details/partners,
 * contact, preloader, scroll-top, AOS mobile tweak, and consolidation patches.
 * Date: 2025-10-15
 */

/* ===============================
   Font & Color Variables
   =============================== */
:root {
  --default-font: "Roboto", system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --heading-font: "Raleway",  sans-serif;
  --nav-font: "Poppins",  sans-serif;

  --background-color: #ffffff;
  --default-color: #444444;
  --heading-color: #08005e;
  --accent-color: #1acc8d;
  --surface-color: #ffffff;
  --contrast-color: #ffffff;

  --nav-color: #ffffff;
  --nav-hover-color: #1acc8d;
  --nav-mobile-background-color: #ffffff;
  --nav-dropdown-background-color: #ffffff;
  --nav-dropdown-color: #444444;
  --nav-dropdown-hover-color: #1acc8d;
}

.light-background {
  --background-color: #f4f5fe;
  --surface-color: #ffffff;
}

.dark-background {
  --background-color: #08005e;
  --default-color: #ffffff;
  --heading-color: #ffffff;
  --surface-color: #0c0091;
  --contrast-color: #ffffff;
}

:root { scroll-behavior: smooth; }

/* ===============================
   General
   =============================== */
body { color: var(--default-color); background-color: var(--background-color); font-family: var(--default-font); }
a { color: var(--accent-color); text-decoration: none; transition: 0.3s; }
a:hover { color: color-mix(in srgb, var(--accent-color), transparent 25%); text-decoration: none; }
h1,h2,h3,h4,h5,h6 { color: var(--heading-color); font-family: var(--heading-font); }

/* PHP Email Form Messages */
.php-email-form .error-message{display:none;background:#df1529;color:#fff;text-align:left;padding:15px;margin-bottom:24px;font-weight:600}
.php-email-form .sent-message{display:none;color:#fff;background:#059652;text-align:center;padding:15px;margin-bottom:24px;font-weight:600}
.php-email-form .loading{display:none;background:var(--surface-color);text-align:center;padding:15px;margin-bottom:24px}
.php-email-form .loading:before{content:"";display:inline-block;border-radius:50%;width:24px;height:24px;margin:0 10px -6px 0;border:3px solid var(--accent-color);border-top-color:var(--surface-color);animation:php-email-form-loading 1s linear infinite}
@keyframes php-email-form-loading{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}

/* ===============================
   Header & Nav
   =============================== */
.header {
  --background-color: rgba(255,255,255,0);
  --default-color: #ffffff;
  --heading-color: #ffffff;
  color: var(--default-color);
  background-color: var(--background-color);
  padding: 20px 0;
  transition: all .5s;
  z-index: 997;
}
.header .logo { line-height: 1; }
.header .logo img { max-height: 32px; margin-right: 8px; }
.header .logo h1 { font-size: 30px; margin: 0; font-weight: 700; color: var(--heading-color); }
.scrolled .header { --background-color:#08005e; box-shadow: 0 0 18px rgba(0,0,0,0.1); }

@media (min-width:1200px){
  .navmenu{padding:0}
  .navmenu ul{margin:0;padding:0;display:flex;list-style:none;align-items:center}
  .navmenu li{position:relative}
  .navmenu>ul>li{white-space:nowrap;padding:15px 14px}
  .navmenu>ul>li:last-child{padding-right:0}
  .navmenu a,.navmenu a:focus{color:color-mix(in srgb,var(--nav-color),transparent 20%);font-size:15px;padding:0 2px;font-family:var(--nav-font);font-weight:400;display:flex;align-items:center;justify-content:space-between;white-space:nowrap;transition:.3s;position:relative}
  .navmenu a i,.navmenu a:focus i{font-size:12px;line-height:0;margin-left:5px;transition:.3s}
  .navmenu>ul>li>a:before{content:"";position:absolute;height:2px;bottom:-6px;left:0;background-color:var(--nav-hover-color);visibility:hidden;width:0;transition:all .3s ease-in-out}
  .navmenu a:hover:before,.navmenu li:hover>a:before,.navmenu .active:before{visibility:visible;width:25px}
  .navmenu li:hover>a,.navmenu .active,.navmenu .active:focus{color:var(--nav-color)}
  .navmenu .dropdown ul{margin:0;padding:10px 0;background:var(--nav-dropdown-background-color);display:block;position:absolute;visibility:hidden;left:14px;top:130%;opacity:0;transition:.3s;border-radius:4px;z-index:99;box-shadow:0 0 30px rgba(0,0,0,0.1)}
  .navmenu .dropdown ul li{min-width:200px}
  .navmenu .dropdown ul a{padding:10px 20px;font-size:15px;text-transform:none;color:var(--nav-dropdown-color)}
  .navmenu .dropdown ul a i{font-size:12px}
  .navmenu .dropdown ul a:hover,.navmenu .dropdown ul .active:hover,.navmenu .dropdown ul li:hover>a{color:var(--nav-dropdown-hover-color)}
  .navmenu .dropdown:hover>ul{opacity:1;top:100%;visibility:visible}
}
@media (max-width:1199px){
  .mobile-nav-toggle{color:var(--nav-color);font-size:28px;line-height:0;margin-right:10px;cursor:pointer;transition:color .3s}
  .navmenu{padding:0;z-index:9997}
  .navmenu ul{display:none;list-style:none;position:absolute;inset:60px 20px 20px 20px;padding:10px 0;margin:0;border-radius:6px;background-color:var(--nav-mobile-background-color);border:1px solid color-mix(in srgb,var(--default-color),transparent 90%);overflow-y:auto;transition:.3s;z-index:9998}
  .navmenu a,.navmenu a:focus{color:var(--nav-dropdown-color);padding:10px 20px;font-family:var(--nav-font);font-size:17px;font-weight:500;display:flex;align-items:center;justify-content:space-between;white-space:nowrap;transition:.3s}
  .navmenu a i,.navmenu a:focus i{font-size:12px;line-height:0;margin-left:5px;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:.3s;background-color:color-mix(in srgb,var(--accent-color),transparent 90%)}
  .navmenu a i:hover,.navmenu a:focus i:hover{background-color:var(--accent-color);color:var(--contrast-color)}
  .navmenu a:hover,.navmenu .active,.navmenu .active:focus{color:var(--nav-dropdown-hover-color)}
  .navmenu .active i,.navmenu .active:focus i{background-color:var(--accent-color);color:var(--contrast-color);transform:rotate(180deg)}
  .navmenu .dropdown ul{position:static;display:none;z-index:99;padding:10px 0;margin:10px 20px;background-color:var(--nav-dropdown-background-color);transition:all .5s ease-in-out}
  .navmenu .dropdown>.dropdown-active{display:block;background-color:rgba(33,37,41,.03)}
  .mobile-nav-active{overflow:hidden}
  .mobile-nav-active .mobile-nav-toggle{color:#fff;position:absolute;font-size:32px;top:15px;right:15px;margin-right:0;z-index:9999}
  .mobile-nav-active .navmenu{position:fixed;overflow:hidden;inset:0;background:rgba(33,37,41,.8);transition:.3s}
  .mobile-nav-active .navmenu>ul{display:block}
}

/* ===============================
   Footer (minimal base if needed)
   =============================== */
.footer { color: var(--default-color); background-color: var(--background-color); font-size: 14px; position: relative; }
.footer .footer-top { padding-top: 50px; border-top: 1px solid color-mix(in srgb, var(--default-color), transparent 90%); }
.footer .copyright { padding:25px 0; border-top:1px solid color-mix(in srgb, var(--default-color), transparent 90%); }
.footer .copyright p { margin-bottom: 0; }

/* ===============================
   Preloader & Scroll Top
   =============================== */
#preloader{position:fixed;inset:0;z-index:999999;overflow:hidden;background:var(--background-color);transition:all .6s ease-out}
#preloader:before{content:"";position:fixed;top:calc(50% - 30px);left:calc(50% - 30px);border:6px solid #fff;border-color:var(--accent-color) transparent var(--accent-color) transparent;border-radius:50%;width:60px;height:60px;animation:animate-preloader 1.5s linear infinite}
@keyframes animate-preloader{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}

.scroll-top{position:fixed;visibility:hidden;opacity:0;right:15px;bottom:15px;z-index:99999;background-color:var(--accent-color);width:40px;height:40px;border-radius:4px;transition:all .4s}
.scroll-top i{font-size:24px;color:var(--contrast-color);line-height:0}
.scroll-top:hover{background-color:color-mix(in srgb,var(--accent-color),transparent 20%);color:var(--contrast-color)}
.scroll-top.active{visibility:visible;opacity:1}

/* Disable aos delay on mobile */
@media screen and (max-width:768px){[data-aos-delay]{transition-delay:0!important}}

/* ===============================
   Global Sections & Titles
   =============================== */
section,.section{color:var(--default-color);background-color:var(--background-color);padding:20px 0;scroll-margin-top:100px;overflow:clip}
@media (max-width:1199px){section,.section{scroll-margin-top:66px}}

.section-title{padding-bottom:5px;position:relative}
.section-title h2{font-size:14px;font-weight:500;padding:0;line-height:1px;margin:0;letter-spacing:1.5px;text-transform:uppercase;color:color-mix(in srgb,var(--default-color), transparent 50%);position:relative}
.section-title h2::after{content:"";width:120px;height:1px;display:inline-block;background:var(--accent-color);margin:4px 10px}
.section-title div{color:var(--heading-color);margin:0;font-size:28px;font-weight:700;text-transform:uppercase;font-family:var(--heading-font)}

/* ===============================
   Hero (no waves)
   =============================== */
.hero{width:100%;min-height:70vh;position:relative;padding:120px 0;display:flex;align-items:center}
.hero .hero-bg{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;z-index:1}
.hero:before{content:"";background:color-mix(in srgb,var(--background-color),transparent 10%);position:absolute;inset:0;z-index:2}
.hero .container{position:relative;z-index:3}
.hero h1{margin:0 0 20px 0;font-size:48px;font-weight:700;line-height:56px;color:color-mix(in srgb,var(--heading-color), transparent 30%)}
.hero h1 span{color:var(--heading-color);border-bottom:4px solid var(--accent-color)}
.hero p{color:color-mix(in srgb,var(--default-color), transparent 20%);margin:5px 0 30px 0;font-size:22px;font-weight:400}
.hero .btn-get-started{color:var(--contrast-color);background:var(--accent-color);font-family:var(--heading-font);font-weight:400;font-size:15px;letter-spacing:1px;display:inline-block;padding:10px 28px 12px 28px;border-radius:50px;transition:.5s;box-shadow:0 8px 28px rgba(0,0,0,.1)}
.hero .btn-get-started:hover{color:var(--contrast-color);background:color-mix(in srgb,var(--accent-color), transparent 15%);box-shadow:0 8px 28px rgba(0,0,0,.1)}
.hero .btn-watch-video{font-size:16px;transition:.5s;margin-left:25px;color:var(--default-color);font-weight:600}
.hero .btn-watch-video i{color:var(--accent-color);font-size:32px;transition:.3s;line-height:0;margin-right:8px}
.hero .btn-watch-video:hover{color:var(--accent-color)}
.hero .btn-watch-video:hover i{color:color-mix(in srgb,var(--accent-color), transparent 15%)}
.hero .animated{animation:up-down 2s ease-in-out infinite alternate-reverse both}
@keyframes up-down{0%{transform:translateY(10px)}100%{transform:translateY(-10px)}}
@media (max-width:640px){
  .hero h1{font-size:28px;line-height:36px}
  .hero p{font-size:18px;line-height:24px;margin-bottom:30px}
  .hero .btn-get-started,.hero .btn-watch-video{font-size:13px}
}

/* ===============================
   About
   =============================== */
.about{padding-top:100px}
.about .content h3{font-size:16px;font-weight:500;line-height:19px;padding:10px 20px;background:color-mix(in srgb,var(--accent-color), transparent 95%);color:var(--accent-color);border-radius:7px;display:inline-block}
.about .content h2{font-weight:700}
.about .content p:last-child{margin-bottom:0}
.about .content .read-more{background:var(--accent-color);color:var(--contrast-color);font-family:var(--heading-font);font-weight:500;font-size:16px;letter-spacing:1px;padding:12px 24px;border-radius:5px;transition:.3s;display:inline-flex;align-items:center;justify-content:center}
.about .content .read-more i{font-size:18px;margin-left:5px;line-height:0;transition:.3s}
.about .content .read-more:hover{background:color-mix(in srgb,var(--accent-color), transparent 20%);padding-right:19px}
.about .content .read-more:hover i{margin-left:10px}
.about .icon-box{background-color:var(--surface-color);padding:36px 28px;box-shadow:0 10px 50px rgba(0,0,0,.1);border-radius:12px;transition:all .3s ease-out}
.about .icon-box i{width:72px;height:72px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;margin-bottom:24px;font-size:28px;line-height:0;transition:all .4s ease-out;background-color:color-mix(in srgb,var(--accent-color), transparent 95%);color:var(--accent-color)}
.about .icon-box h3{margin-bottom:10px;font-size:24px;font-weight:700}
.about .icon-box p{margin-bottom:0}
.about .icon-box:hover i{background-color:var(--accent-color);color:var(--contrast-color)}
.about .icon-boxes .col-md-6:nth-child(2) .icon-box,
.about .icon-boxes .col-md-6:nth-child(4) .icon-box { margin-top: -1px; }
@media (max-width:768px){.about .icon-boxes .col-md-6:nth-child(2) .icon-box,
.about .icon-boxes .col-md-6:nth-child(4) .icon-box{margin-top:0}}

/* ===============================
   Features (3-column cards)
   =============================== */
.features .features-item{background-color:var(--surface-color);display:flex;align-items:center;padding:20px;transition:.3s;border:1px solid color-mix(in srgb,var(--default-color), transparent 90%);position:relative;border-radius:8px;box-shadow:0 0 0 rgba(0,0,0,0)}
.features .features-item i{font-size:28px;padding-right:10px;line-height:0}
.features .features-item h3{font-weight:700;margin:0;padding:0;line-height:1;font-size:16px}
.features .features-item h3 a{color:var(--heading-color);transition:.3s}
.features .features-item:hover{border-color:var(--accent-color);box-shadow:0 6px 24px rgba(0,0,0,.06)}
.features .features-item:hover h3 a{color:var(--accent-color)}
.features .features-item + br{display:none}
.features .features-item ~ p,
.features .features-item ~ ul { margin-top: 12px; }
.features ul{margin-left:1.1rem!important}

/* ===============================
   Details / Partners (classic tiles)
   =============================== */
.partner-tile {
  background: var(--surface-color);
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 90%);
  border-radius: 16px;
  padding: 28px 26px;
  box-shadow: 0 14px 40px rgba(0,0,0,0.06);
  transition: transform .18s ease, box-shadow .22s ease, border-color .22s ease;
}
.partner-tile:hover { transform: translateY(-2px); border-color: var(--accent-color); box-shadow: 0 18px 48px rgba(0,0,0,0.08); }
.partner-heading { font-size: clamp(22px, 2vw, 32px); font-weight: 800; color: var(--heading-color); line-height: 1.25; margin-bottom: 14px; }
.partner-list { list-style: none; padding: 0; margin: 14px 0 0; }
.partner-list li { position: relative; padding-left: 22px; text-align: left; margin: 8px 0; line-height: 1.6; }
.partner-list li::before { content: "✓"; position: absolute; left: 0; top: 0; color: var(--accent-color); font-weight: 800; }
#details.light-background .section-title { margin-bottom: 10px; }

/* ===============================
   Contact
   =============================== */
.contact .info-item+.info-item { margin-top: 40px; }
.contact .info-item i { color: var(--accent-color); background: color-mix(in srgb, var(--accent-color), transparent 92%); font-size: 20px; width: 44px; height: 44px; display: flex; justify-content: center; align-items: center; border-radius: 50px; transition: all .3s ease-in-out; margin-right: 15px; }
.contact .info-item h3 { padding: 0; font-size: 18px; font-weight: 700; margin-bottom: 5px; }
.contact .info-item p { padding: 0; margin-bottom: 0; font-size: 16px; }
.contact .info-item:hover i { background: var(--accent-color); color: var(--contrast-color); }
.contact .php-email-form { height: 100%; }

/* Modernized cards + form */
.contact-card{background:var(--surface-color);border:1px solid color-mix(in srgb,var(--default-color), transparent 90%);border-radius:12px;padding:18px 16px;gap:12px;transition:box-shadow .25s ease,border-color .25s ease,transform .2s ease;align-items:flex-start}
.contact-card i{background:color-mix(in srgb,var(--accent-color), transparent 92%);color:var(--accent-color);width:44px;height:44px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:20px;margin-top:2px}
.contact-card:hover{border-color:var(--accent-color);box-shadow:0 10px 30px rgba(0,0,0,.06);transform:translateY(-1px)}
.card-form{background:var(--surface-color);border:1px solid color-mix(in srgb,var(--default-color), transparent 90%);border-radius:12px;padding:20px;box-shadow:0 4px 20px rgba(0,0,0,.04)}
@media (min-width:992px){.card-form{padding:28px}}
.php-email-form .form-control{border-radius:8px}
.php-email-form button[type=submit]{border-radius:40px;font-weight:600}

/* ===============================
   Consolidated Spacing & Readability Patches
   =============================== */
/* Normalize section spacing */
section.section{padding-top:60px;padding-bottom:60px}
@media (max-width:768px){section.section{padding-top:40px;padding-bottom:40px}}
section.section + section.section{padding-top:40px}

/* Feature text sizing */
.features .features-item p,
.features .features-item ul li { font-size: 16px; line-height: 1.6; }
.features .features-item ul li + li { margin-top: 6px; }

/* Section title spacing */
.section-title{margin-bottom:20px}
@media (max-width:768px){.section-title{margin-bottom:15px}}
.features .section-title{margin-bottom:15px}
.features .row{margin-top:0}

/* AOS title smoothness */
.section-title[data-aos]{transition-property:transform,opacity;transition-duration:.6s;transition-timing-function:cubic-bezier(.25,.1,.25,1)}
[data-aos="fade-up"]{transform:translateY(20px);opacity:0}
[data-aos="fade-up"].aos-animate{transform:translateY(0);opacity:1}

/* Accessibility focus */
a:focus-visible,button:focus-visible,[role="button"]:focus-visible{outline:2px solid color-mix(in srgb, var(--accent-color), transparent 0%);outline-offset:2px;border-radius:4px}

/* === CSRO Logo Sizing === */
.csro-logo {
  max-width: 65%;       /* increase from 55% to 80% */
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/* === SPD Azure Logo Sizing === */
.spd-azure-logo {
  max-width: 65%;
  height: auto;
  display: inline-block;
}