/* ========== BUTTON STYLES ========== */

.MattButton .orange-button {
    position: absolute;
    left: 20px;
    bottom: 20px;
}

.MattButton .uk-panel {
    padding-bottom: 59px !important;
}

/* Responsive button styles */
@media only screen and (max-width: 768px) {
    .MattButton .orange-button {
        position: relative;
        left: auto;
        bottom: auto;
        display: block;
        margin-top: 20px;
    }

    .MattButton .uk-panel {
        padding-bottom: 20px !important;
    }
}

/* ========== Showcase image crop top right (Home page) ========== */

/* Default (up to 1800px): Crop from bottom-left */
.showcase .moduletable .home-slide .uk-slideshow-items img {
    object-fit: cover !important;
    object-position: 80% 20% !important;  /* Crops bottom and left */
}

/* At 1801px and beyond: Slightly shift focus to top-right without drastic movement */
@media (min-width: 1801px) {
    .showcase .moduletable .home-slide .uk-slideshow-items img {
        object-position: 85% 20% !important;  /* Adjusted to avoid drastic shunting */
        transition: object-position 0.5s ease-in-out;  /* Smooth transition effect */
    }
}



/* NEW SERVICE BOXES BELOW HERE */

/* Ensure proper spacing and structure */
.matt-service-boxes {
    margin-top: 40px;
    padding: 20px;
}

/* Apply coral border only to individual boxes */
.matt-service-boxes .uk-panel {
    border: 2px solid #f3b562 !important;  /* Coral border */
    padding: 20px;
    border-radius: 0;  /* Square corners */
    background-color: rgba(243, 181, 98, 0.1) !important;  /* Remove grey background */
    font-size: 1.1em;
    color: #333;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;  /* Ensures equal height for each box */
    text-align: left !important;  /* Force left alignment for all content */
    transition: all 0.3s ease-in-out;
}

/* Header styles for individual service boxes */
.matt-service-boxes .uk-panel h3 {
    font-weight: 350;
    font-size: 1.6rem;
    line-height: 2rem;
    padding: 0 30px;
    color: #4bbcc0 !important;  /* Ensure correct color */
    margin: 0 0 15px 0;  /* Add spacing below for consistency */
    text-align: left !important;  /* Force left alignment */
}

/* Align paragraph text to the left */
.matt-service-boxes .uk-panel p {
    text-align: left !important;
}

/* Style the text inside the service boxes */
.matt-service-boxes .uk-panel .uk-margin {
    padding-bottom: 30px;
    color: #333 !important;  /* Adjust text color */
    margin: 0 !important;
    width: 100% !important;
    margin-top: auto;  /* Push the button to the bottom */
    text-align: left !important;  /* Align Read More button */
}

/* Button styles */
.matt-service-boxes .uk-button {
    background-color: white;
    color: #4bbcc0;
    border-radius: 20px;
    padding: 5px 5px 5px 15px;
    font-weight: 700;
}

/* Optional: Align the button itself to the left if needed */
.matt-service-boxes .uk-panel .uk-margin a {
    text-align: left;
}

/* align buttons to bottom left */

/* Ensure each service box is a flex container */
.matt-service-boxes .uk-panel {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    position: relative; /* Ensure positioning works */
}

/* Target the orange button inside each panel */
.matt-service-boxes .uk-panel .orange-button {
    position: absolute;
    bottom: 20px;  /* Adjust to your preference */
    left: 20px;    /* Adjust to your preference */
    display: block;
    text-decoration: none;
}

.matt-service-boxes .uk-panel .orange-button:hover{
 background-color: #ed6d69 !important; 
}

/* Optional: Center the button horizontally in the box */
.matt-service-boxes .uk-panel .orange-button.centered {
    left: 50%;
    transform: translateX(-50%);
}

/* Fix repeated nth-child selector */
.matt-service-boxes > div:nth-child(7) {
    margin-left: auto;
    margin-right: auto;
}

/* Hover effect for individual boxes */
.matt-service-boxes .uk-panel:hover {
    background-color: #fef0ef;  /* Light coral background on hover */
}

/* Arrow effect inside the box (commented out in original) */
/*
.matt-service-boxes .uk-panel:before {
    content: '\f105';
    font-family: FontAwesome;
    border: 1px solid white;
    border-radius: 50%;
    font-size: 1.5rem;
    padding: 0 13px;
    position: absolute;
    top: 30px;
    right: -50px;
    transition: 0.5s;
}
*/

/* Target links inside the teal section */
.home-bar a {
    color: #ffffff !important;  /* Change text to white for better visibility */
    font-weight: 600;  /* Optional: Make it bold */
    text-decoration: underline; /* Optional: Add an underline */
}

/* Ensure hover effect is visible */
.home-bar a:hover {
    color: #ffcc00 !important;  /* Highlight in yellow on hover */
    text-decoration: none;
}

.g-content .uk-scope .uk-h3.uk-margin-remove-top a.uk-link-reset {
    color: #ffffff !important;
    text-decoration: none !important;
    font-weight: 350;
}



/* ========== TYPOGRAPHY ========== */

.uk-button:after {
    font-family: FontAwesome;
    content: '\f105';
    border-radius: 20px;
    padding: 1px 6px 2px 8px;
    margin-left: 10px;
}

.uk-button:hover {
    background-color: #41bbc0;
    color: white;
}

.uk-button:hover:after {
    border: 1px solid white;
}

/* ========== FEATURE SECTIONS ========== */

#g-feature .matt-green,
#g-featuretwo.matt-green {
    background-color: #41bbc0;
    background-image: url('../images/neuro-bg-white.png');
    background-size: auto;
    background-position: center;
    text-align: center;
    color: white;
}

#g-feature .matt-green strong {
    font-size: 1.2rem;
}

#g-featuretwo.matt-green .custom a {
    font-size: 1.6rem;
    font-weight: 300;
}

#g-featuretwo.matt-green .custom a:after {
    content: '\f105';
    font-family: FontAwesome;
    border: 2px solid white;
    border-radius: 30px;
    padding: 0px 8px 0px 10px;
    margin-left: 10px;
}

/* ========== FOOTER STYLES ========== */

#g-featuretwo.matt-green.join h3 {
    font-size: 1.6rem;
    line-height: 2rem;
    width: 30%;
    margin-top: 26px;
    text-align: center;
}

/* ========== BULLET POINTS ========== */

.matt-bullet-points li:before {
    content: '\f0a9' !important;
    font-family: FontAwesome;
    color: #54c2c6;
    font-size: 20px;
    position: absolute;
    left: 0;
}

.matt-bullet-points li {
    padding-left: 25px;
    position: relative;
    list-style-type: none;
}

.matt-custom-list li {
    line-height: 2em;
    padding: 5px 0;
    font-size: 14px;
    list-style: none;
}

.matt-custom-list li:before {
    font-family: 'FontAwesome';
    content: "\f0a9";
    color: #54c2c6;
    margin-right: 15px;
}

/* ========== SEARCH BUTTON ========== */

.matt-search-button > div .button {
    border: 1px solid #ee7666;
    border-radius: 20px;
    padding: 1px 6px 2px 8px;
    margin-left: 10px;
    background-color: #ee7767;
}



/* ========== SHOWCASE SECTION ========== */

/*.matt-showcase div {
    height: 400px;
    width: 100%;
    background-color: powderblue;
}
*/

/* ========== CUSTOM ALIGNMENTS ========== */

.Matt-align-left-class .custom-inner-width {
    margin-left: 0 !important;
}

.Matt-align-left-class .custom-inner-width:before,
.Matt-align-left-class .custom-inner-width:after {
    display: none;
}

.Matt-align-right-class .custom-inner-width {
    margin-right: 0 !important;
}

.Matt-align-right-class .custom-inner-width:before {
    display: none;
}

/* ========== TESTING STYLES ========== */

.matt-test-box {
    background-color: #ffcc00;
    padding: 20px;
    border: 2px solid #333;
    text-align: center;
    font-size: 1.5em;
    color: #000;
}

/* ========== BACKGROUND COLOR FIXES ========== */

.matt-background-color .module-table {
    background-color: lightblue;
}

/* ========== UTILITIES ========== */

.teal {
    background-color: #41bbc0;
    color: white;
}

.home-bar {
    color: white;
}

/* for aligning we can help you widgetkit */ 

.we-can-help-inner {
  max-width: 1140px;
  margin: 0 auto;
  padding-left: 2rem;
  padding-right: 2rem;
}

/* ====== STICKY NAV BAR ========*/
#g-navigation.sticky-nav {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1000;
  background: white;
  box-shadow: 0 2px 5px rgba(0,0,0,0.1);
  transform: translateY(-100%);
  opacity: 0;
  transition: all 0.4s ease;
  pointer-events: none;
}

body.show-sticky-nav #g-navigation.sticky-nav {
  transform: translateY(0);
  opacity: 1;
  pointer-events: auto;
}

/* =======HOVER BUTTONS ON TEAL BANNER =======*/
/* Widgetkit "Read More" button hover style and transition */

/* Raise the button above full card link */
.uk-button-default {
  position: relative;
  z-index: 10;
}

.uk-scope .uk-button-default {
  transition: all 0.3s ease; /* Smooth hover effect */
}

.uk-scope .uk-button-default:hover {
  background-color: #ee7767 !important; /* Coral background on hover */
  color: #ffffff !important;             /* White text on hover */
  border-color: #ee7767 !important;      /* Match border to background */
}


/* ==========ADD TICKS TO BULLET LISTS IN ANY GIVEN MODULE ======*/

.custom-ticks li {
  position: relative;
  list-style: none;
  padding-left: 3.0em;
  margin-bottom: 0.8em;
}
.custom-ticks li::before {
  content: "✔";
  position: absolute;
  left: 0;
  top: -0.2em;
  font-family: Arial, sans-serif;
  font-weight: bold;
  color: #666666;
  border: 2px solid #666666;
  border-radius: 50%;
  font-size: 1em;
  width: 1.8em;
  height: 1.8em;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* =======Hide unwanted sections from Joomla profile page======== */
fieldset.user-basic-settings,
fieldset.user-mfa-settings {
    display: none !important;
}

/* =========Show Page Content only while a com_users view (login / MFA / profile) is active======== */
body:not(.com_users) .mfa-panel {
    display: none !important;
}

/* ======Profile-page welcome banner======== */
.first-login-message{
    /* light teal background + matching border */
    background:#e0f7f7;          /* pick any tint you like */
    border:1px solid #b9eaea;

    /* text styling */
    color:#666666;               /* mid-grey body copy */
    font-family:Arial, Helvetica, sans-serif;

    /* spacing / shape (keep or tweak) */
    padding:15px;
    border-radius:6px;
    margin-bottom:20px;
}

/* optional: ensure links inside the banner stay on-brand */
.first-login-message a{
    color:#006666;               /* darker teal for links */
}

/* WidgetKit Titles - Brand Style (Teal, Roboto Light, H3 Aligned) */
.uk-scope .uk-accordion-title {
  font-family: 'Roboto', sans-serif !important;
  font-weight: 300 !important;
  color: #4bbcc0 !important;
  font-size: xx-large !important;
}

.uk-scope .uk-accordion li::before {
    content: none !important;
    border: none !important;
    background: none !important;
    display: none !important;
}

/* ===================================================================
   RE-USABLE  TEAL  TESTIMONIAL  BANNER
   Apply the class  faq-teal-banner  to any SECTION grey-bar in Gantry
   =================================================================== */

.faq-teal-banner{
    /* full-width light-teal background */
    background:rgba(65,187,192,.20);
    text-align:center;
    padding:60px 0;                 /* top & bottom space (adjust if you like) */
}

/* --- Typography & colours inside the banner ------------------------- */
.faq-teal-banner h1,
.faq-teal-banner h2,
.faq-teal-banner h3,
.faq-teal-banner p,
.faq-teal-banner a,
.faq-teal-banner .uk-slidenav{color:#0099a3;}

/* --- WidgetKit slideshow arrows ------------------------------------- */
.faq-teal-banner .uk-slidenav{
    border:1px solid #41bbc0;
    border-radius:50%;
    width:36px;height:36px;
    line-height:34px;               /* vertically centre the arrow glyph */
    pointer-events:auto;            /* keep them clickable */
}
.faq-teal-banner .uk-slidenav-container{
    position:absolute;
    top:50%;left:0;right:0;
    transform:translateY(-50%);
    display:flex;
    justify-content:space-between;
    pointer-events:none;            /* container itself ignores clicks */
}

/* --- Fix UIKit placeholder so height hugs the slide content --------- */
/* remove 16:9 padding-box */
.faq-teal-banner .uk-slideshow-items{
    padding-top:0 !important;
    height:auto !important;
    aspect-ratio:auto !important;   /* for UIKit ≥3.16 */
}
/* make the active <li> create height; hide the rest */
.faq-teal-banner .uk-slideshow-items > li{
    position:static !important;     /* cancel absolute positioning */
    display:block  !important;
    padding:20px 0;                 /* breathing space around quote */
}
.faq-teal-banner .uk-slideshow-items > li:not(.uk-active){
    display:none !important;
}
/* ===============================================================
   FINAL tidy – teal testimonial banner
   =============================================================== */

/* 0. Row background & basic spacing (already working) */
.faq-teal-banner{
    background:rgba(65,187,192,.20);
    text-align:center;
    padding:60px 0;
}

/* 1. Override UIKit grey – make quote & author teal + bold */
.faq-teal-banner .uk-slideshow-items p{
    color:#0099a3 !important;   /* beat site.css */
    font-weight:600;
}

/*   Author on its own line, centred  */
.faq-teal-banner cite,
.faq-teal-banner em,
.faq-teal-banner .author{
    display:block;
    margin-top:.75rem;
    color:#0099a3 !important;
    font-weight:400;
}

/* 2. Constrain BOTH the slide list **and** the nav bar */
.faq-teal-banner .uk-slideshow,
.faq-teal-banner .uk-slidenav-container{
    max-width:960px;        /* adjust to match your grid */
    margin:0 auto;
    padding:0 70px;         /* leaves 70 px for 36 px arrow + air */
}

/* 3. Arrow buttons – circle, colour, vertical-centre */
.faq-teal-banner .uk-slidenav{
    border:1px solid #4bbcc0;
    border-radius:50%;
    width:36px;height:36px;
    line-height:34px;
    color:#0099a3;
    pointer-events:auto;          /* keep them clickable   */
}
.faq-teal-banner .uk-slidenav-container{
    position:absolute;
    top:50%;left:0;right:0;
    transform:translateY(-50%);
    display:flex;
    justify-content:space-between;
    pointer-events:none;          /* container ignores clicks */
}

/* 4. Kill UIKit 16:9 placeholder, let slide decide height */
.faq-teal-banner .uk-slideshow-items{
    padding-top:0 !important;
    height:auto   !important;
    aspect-ratio:auto !important;
}
.faq-teal-banner .uk-slideshow-items > li{
    position:static !important;   /* not absolute          */
    display:block   !important;
    padding:20px 0;               /* breathing-space       */
}
.faq-teal-banner .uk-slideshow-items > li:not(.uk-active){
    display:none !important;
}


/* -------------------------------------------------
   FAQ hero strip – deeper + full-width image
   ------------------------------------------------- */
#g-showcase.faq-showcase {
    padding: 7.5rem 0;                                     /* depth   */
    background: url("/images/banners/neuro-context.jpg")   /* same file */
                center / cover no-repeat;
    background-color: #4bbcc0;                             /* loads first */
}

@media (max-width: 991px) {
    #g-showcase.faq-showcase { padding: 3.75rem 0; }
}



/* Reduce the depth on phones so it doesn’t dominate the screen */
@media (max-width: 991px) {
    #g-showcase.faq-showcase {
        padding: 3.75rem 0;   /* ≈60 px */
    }
}


/*---------------------------------------------
User profile page tidy up
----------------------------------------------*/

/* User Profile Page Tidy Up */
.com-users-profile dl.dl-horizontal {
  display: grid;
  grid-template-columns: max-content 1fr;
  gap: 0.2rem 1rem;
  margin: 1rem 0;
  font-size: 1rem;
}

.com-users-profile dl.dl-horizontal dt {
  font-weight: bold;
  color: #444;
  text-align: left;
}

.com-users-profile dl.dl-horizontal dd {
  margin: 0;
  padding: 0 0 0.5rem;
  color: #333;
}

/* ----------------------------------------
   Login Page: Tidy up Forgot Password / Username Links
---------------------------------------- */

.com-users-login .list-group-item {
  background-color: transparent;
  border: none;
  padding: 0.25rem 0;
  color: #555;
  font-size: 0.95rem;
  display: inline-block;
  text-decoration: underline;
  margin-right: 1rem;
}

.com-users-login .list-group-item:hover {
  color: #2aa8a2; /* Neuro-Logical teal */
  text-decoration: none;
}

/* Add spacing above the link block */
.com-users-login__options {
  margin-top: 1rem;
}

/* =========================================
   MEOT LANDING PAGE - MOBILE PHONE IMAGE FIX
   Stops app screenshots stretching on small screens
========================================= */

@media (max-width: 820px) {
  .meot-page .meot-features-3 .features3__phone img {
    width: auto !important;
    max-width: min(42vw, 180px) !important;
    height: auto !important;
    object-fit: contain !important;
  }
}

/* =========================================
   MEOT LANDING PAGE - BENEFITS PHONE IMAGE FIX
   Stops benefits screenshot stretching on small screens
========================================= */

@media (max-width: 820px) {
  .meot-page .meot-benefits .benefits__phone img {
    width: auto !important;
    max-width: min(42vw, 180px) !important;
    height: auto !important;
    object-fit: contain !important;
  }
}

/* =========================================
   MEOT LANDING PAGE - KEEPING FOCUSED ANGLED PHONE FIX
========================================= */

@media (max-width: 820px) {
  .meot-page .meot-benefits .benefits__phone img[src*="MeOTKeepingFocused.png"] {
    width: auto !important;
    max-width: min(60vw, 260px) !important;
    height: auto !important;
    object-fit: contain !important;
  }
}

/* =========================================
   MEOT LANDING PAGE - ANGLED PHONE IMAGE FIXES
   Larger mobile sizing for angled screenshots
========================================= */

@media (max-width: 820px) {
  .meot-page img.meot-phone-angled {
    width: auto !important;
    max-width: min(60vw, 260px) !important;
    height: auto !important;
    object-fit: contain !important;
  }
}


/* =========================================
   MEOT MOBILE SPEAK TO EXPERT BAR FIX
   Compact by default, expands on tap/hover
========================================= */

@media (max-width: 820px) {
  body.meot-page #g-header .footer-contact {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    top: auto !important;
    width: 100vw !important;
    max-width: 100vw !important;
    background: #ef7368 !important;
    z-index: 99999 !important;
    transform: none !important;
    margin: 0 !important;
    padding: 16px 20px !important;
    text-align: center !important;
  }

  body.meot-page #g-header .footer-contact h3 {
    position: static !important;
    transform: none !important;
    left: auto !important;
    top: auto !important;
    margin: 0 !important;
    color: #ffffff !important;
    text-align: center !important;
  }

  body.meot-page #g-header .footer-contact p {
    display: none !important;
    margin-top: 14px !important;
    color: #ffffff !important;
  }

  body.meot-page #g-header .footer-contact:hover p,
  body.meot-page #g-header .footer-contact:focus-within p,
  body.meot-page #g-header .footer-contact:active p {
    display: block !important;
  }
}

/* =========================================
   MEOT DESKTOP SPEAK TO EXPERT SIDE TAB FIX
   Pulls the coral contact tab further into view
========================================= */

@media (min-width: 821px) {
  body.meot-page #g-header .footer-contact {
    right: -80px !important;
  }

  body.meot-page #g-header .footer-contact h3 {
    left: -95px !important;
  }
}

/* =========================================
   MEOT MOBILE INTRO DOT LAYERING FIX
   Keeps decorative circles behind text
========================================= */

@media (max-width: 820px) {
  body.meot-page .meot-intro {
    position: relative !important;
    overflow: hidden !important;
    isolation: isolate !important;
  }

  body.meot-page .meot-intro::before,
  body.meot-page .meot-intro::after {
    z-index: 0 !important;
    pointer-events: none !important;
  }

  body.meot-page .meot-intro .g-container,
  body.meot-page .meot-intro .g-grid,
  body.meot-page .meot-intro .g-content,
  body.meot-page .meot-intro .platform-content,
  body.meot-page .meot-intro .moduletable {
    position: relative !important;
    z-index: 2 !important;
  }
}

/* =========================================
   MEOT FEATURES 3 TITLE - FI LIGATURE FIX
========================================= */

.meot-page .meot-features-3 .features3__title {
  font-variant-ligatures: none !important;
  font-feature-settings: "liga" 0, "clig" 0 !important;
  letter-spacing: 0.01em !important;
}
