/*Unsubscribe Page*/
html body #acyusersubscription#acyusersubscription .acym_list .list_name {
  font-size: 18px !important;
}

/*Recaptcha Badge*/
html body .grecaptcha-badge {
  opacity: 0 !important;
  pointer-events: none !important;
}

/*Body*/
#sp-main-body {
  padding: 50px 0;
}

body.itemid-101 #sp-main-body { 
  padding: 0px 0 !important;
  display: block !important;
}

body, .sp-preloader {
  background-color: #f1f1f1 !important;
  color: #17496f !important;
}

/*Coming Soon*/

html.coming-soon .coming-soon-title {
  color: #1b4f76 !important;
}

html.coming-soon body {
  background-color: #ffffff !important;
}

html.coming-soon .coming-soon-content {
  color: #4f5153 !important;
}

/*Menu*/
#sp-menu {
  margin: 0 auto;
}

.sp-megamenu-parent .sp-menu-item.current-item.active > a {
  font-weight: bold;
}

/*Header*/
#sp-header.full-header {
  padding-left: 40px; 
  padding-right: 40px; 
}


#sp-header.header-nectar {
  background-color: white !important;
  top: 0px !important;
}

#sp-header.header-nectar .container {
  border-radius: 0px !important;
}

/*Footer Copyright*/

.sp-copyright {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  margin-bottom: 20px !important;
  background-color: #000 !important;
  padding: 20px !important;
  color: #b4b4b4 !important;
}

.sp-copyright a {
  color: #b4b4b4 !important;
}

.sp-copyright a:hover {
  color: #ffffff !important; /* Optional: Lighter color on hover for contrast */
}

/*Blog Setup*/

/* Only affect the EasyBlog subscribe form that has the `footerblogs` class */
#eb.footerblogs.eb-mod .eb-mod-form input.form-control,
#eb.footerblogs.eb-mod .eb-mod-form input[type="text"],
#eb.footerblogs.eb-mod .eb-mod-form input[type="email"] {
  color: #686767 !important;
  caret-color: #686767;
}

/* Optional: placeholders & autofill inside this module only */
#eb.footerblogs.eb-mod .eb-mod-form input.form-control::placeholder { color: #686767 !important; opacity: .85; }
#eb.footerblogs.eb-mod .eb-mod-form input.form-control:-webkit-autofill { -webkit-text-fill-color: #686767 !important; }

#eb .eb-entry-author-bio h3 {
  font-size: 35px !important;
  font-weight: bold !important;
}

.eb-entry-helper {
  font-size: 18px !important;
}

#eb .eb-post-title {
  font-size: 30px !important;
  line-height: 36px !important;
}

#eb .comma-seperator {
  margin-bottom: 5px !important;
  font-size: 18px !important;
}

#eb .eb-post-nickel .eb-post-foot {
  font-size: 18px !important;
}

.eb-mod-form-action {
  margin-top: 20px !important;
}

#eb div.eb-mod-title a.eb-mod-media-title {
  font-size: 24px !important;
  line-height: 26px !important;
  margin-bottom: 5px !important;
  display: block !important;
  color: white !important;
  transition: color 0.3s ease !important; /* Smooth color transition */
}

#eb div.eb-mod-title a.eb-mod-media-title:hover {
  color: #9bc9fa !important; /* Change to desired hover color, e.g., yellow */
}

#eb.eb-mod * {
  font-size: 16px !important;
  color: #cbcbcb !important;
  line-height: 18px !important;
  margin-bottom: 5px !important;
}

#eb .mod-items-grid > .mod-grid .mod-item {
  border: 1px solid white !important;
  border-radius: 20px !important;
  padding: 20px !important;
  background-color: rgba(255, 255, 255, 0.1) !important;
  min-height: 500px !important;
  margin-bottom: 20px !important;
}

#eb .mod-cell {
  background-color: #6d6f71;
  padding: 20px;
  border-radius: 10px;
}

#eb .mod-cell a {
  color: #ffffff !important;
}

#eb .mod-cell:hover {
  background-color: #4f5153;
}

.eb-entry-author-details {
  font-size: 18px;
  line-height: 24px;
}

.eb-mod-head.mod-table.align-middle {
  display: none !important;
}
#eb .eb-mod-thumb .eb-mod-image-cover::before {
  border: 1px !important;
}

.eb-mod-image-cover {
  border-radius: 10px !important;
}

@media screen and (min-width: 900px) and (max-width: 1368px) {
  #eb.mod_easybloglatestblogs .mod-items-grid { display: flex; flex-wrap: wrap; }
  #eb.mod_easybloglatestblogs .mod-items-grid > .mod-grid { width: 50% !important; }
  #eb.mod_easybloglatestblogs .mod-items-grid > .mod-grid:nth-child(n+3) { display: none !important; }
  #eb.mod_easybloglatestblogs .mod-items-grid .mod-item { height: auto; overflow: hidden; }
}
/* Tablet portrait + landscape: only 2 articles, fixed height */
@media screen and (min-width: 768px) and (max-width: 1024px) {
  #eb.mod_easybloglatestblogs .mod-items-grid {
    display: flex;
    flex-wrap: wrap;
  }
  #eb.mod_easybloglatestblogs .mod-items-grid > .mod-grid {
    width: 50% !important;
  }
}



/*Home Page Tool Tip*/
.tooltip-container {
  position: relative;
  display: inline-block;
  cursor: pointer;
}

.tooltip-popup {
  visibility: hidden;
  background-color: #1e1e1e;
  color: #fff;
  text-align: left;
  padding: 10px 14px;
  border-radius: 6px;
  position: absolute;
  z-index: 1000;
  bottom: 125%; /* Position above the icon */
  left: 50%;
  transform: translateX(-50%);
  opacity: 0;
  transition: opacity 0.2s ease;
  width: 260px;
  font-size: 16px;
  line-height: 1.4em;
}

.tooltip-container:hover .tooltip-popup {
  visibility: visible;
  opacity: 1;
}

.tooltip-popup::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  border-width: 6px;
  border-style: solid;
  border-color: #1e1e1e transparent transparent transparent;
}

/*Home Page Newsletter Signup Button*/
.btn.btn-primary.button.subbutton {
  padding-right: 50px !important;
}

/*Footer*/

.menu_menu.footermenu {
  font-size: 18px;
  line-height: 1.6;
  list-style: none;
  margin: 0;
  padding-left: 15px; /* left indent */
}

.menu_menu.footermenu li {
  display: block;
  margin-bottom: 8px;
}

.menu_menu.footermenu li a {
  color: #cccccc !important; /* grey default */
  text-decoration: none;
  transition: color 0.3s ease;
}

.menu_menu.footermenu li a:hover {
  color: #f0f0f0 !important; /* lighter grey on hover */
}

/*Easydiscuss*/
#ed .t-text--truncate {
  font-weight: bold !important;
  font-size: 1.0rem !important;
}

#ed .o-btn--primary {
  background-color: rgb(27, 79, 118) !important;
  border-color: rgb(27, 79, 118) !important;
}

/* Show Registration only on Support Hub (Itemid 108) */
body:not(.itemid-108) .sp-megamenu-parent li.support-only { display:none !important; }
/* If Helix applies the class on <a> instead of <li>, hide the parent list item too */
body:not(.itemid-108) .sp-megamenu-parent li > a.support-only { display:none !important; }

/* Community Signup link: red on Support Hub only (Itemid 108) */
body.itemid-108 .sp-megamenu-parent li.support-only > a,
body.itemid-108 .sp-megamenu-parent a.support-only {
  color: red !important;
}

/* Support Signup red inside OFFCANVAS menu on Itemid 108 */
body.itemid-108 .offcanvas-inner .menu li.support-only > a,
body.itemid-108 .offcanvas-inner .menu a.support-only {
  color: red !important;
}

/* Login menu item (ID 109) — shrink only the FA icon */
.pe-2.fa-solid.fa-right-to-bracket {
  font-size: 15px !important;
}

.sp-module-title {
  font-size: 25px !important;
}

.lg\:o-grid__cell.lg\:o-grid__cell--3.sm\:t-mb--md {
  padding-bottom: 10px !important;
}

.ed-mod.ed-mod--search.is-desktop.si-theme--light {
    margin-bottom: 10px !important;
}

/*Breadcrumbs*/
.sp-module.breadcrumbs.jmoddiv {
  background-color: #484a4b !important;
  border-radius: 5px !important;
  margin-bottom: 20px !important;
}

.breadcrumb > .active {
  color: white !important;
}

.breadcrumb > li, .breadcrumb > li + li::before, .breadcrumb > li > a {
  color: white !important;
}

.breadcrumb-item + .breadcrumb-item::before {
  color: white !important;
}

.breadcrumb {
  background-color: #484a4b !important;
  border-radius: 5px !important;
  margin-bottom: 10px !important;
}

#ed .o-alert--info {
  color: var(--si-info--text);
  background-color: red !important;
  border-color: red !important;
  font-size: 16px !important;
}

/*Sitemap*/


#osmap-menu-uid-mainmenu {
  font-size: 45px  !important;
}

/*Registration Form*/


#member-registration input[type="text"],
#member-registration input[type="email"],
#member-registration input[type="password"],
#member-registration textarea,
#member-registration select {
    background-color: #ffffff !important;
    border: 1px solid #ccc !important;
    border-radius: 5px !important;
    padding: 8px 10px;
    box-shadow: none !important;
}

/* Registration password and confirm: single box with overlay eye */
#member-registration .password-group .input-group { position: relative; }
#member-registration .password-group .input-group-text { display: none !important; }

#member-registration #jform_password1,
#member-registration #jform_password2 {
  background: #fff !important;
  border: 1px solid #ccc !important;
  border-radius: 5px !important;
  padding: 10px 44px 10px 12px !important; /* room for eye */
  box-shadow: none !important;
}

/* Eye toggle */
#member-registration .password-group .input-password-toggle {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: none !important;
  cursor: pointer;
}

/* Focus */
#member-registration #jform_password1:focus,
#member-registration #jform_password2:focus {
  border-color: #66afe9 !important;
  outline: 0;
  box-shadow: none !important;
}

/* Strength meter tidy */
#member-registration .password-group meter {
  display: block;
  width: 100%;
  height: 6px;
  margin-top: 8px;
  background: transparent;
  border: 0;
}


/*Login Form*/
/* One style for both fields. Keeps the eye toggle and restores full box on password */

/* Username */
#com-users-login__form #username{
  background:#fff !important;
  border:1px solid #ccc !important;
  border-radius:5px !important;
  padding:10px 12px !important;
  box-shadow:none !important;
}

/* Password */
#com-users-login__form .password-group .input-group{ position:relative; }
#com-users-login__form .password-group .input-group-text{ display:none !important; }

#com-users-login__form #password{
  background:#fff !important;
  border:1px solid #ccc !important;
  border-radius:5px !important;
  padding:10px 44px 10px 12px !important; /* space for eye */
  box-shadow:none !important;
}

/* Eye button overlay */
#com-users-login__form .input-password-toggle{
  position:absolute;
  right:10px; top:50%; transform:translateY(-50%);
  background:transparent !important; border:0 !important; padding:0 !important;
  width:32px; height:32px; display:flex; align-items:center; justify-content:center;
}

/* Focus and invalid */
#com-users-login__form #username:focus,
#com-users-login__form #password:focus{ border-color:#66afe9 !important; outline:0; }
#com-users-login__form #username.is-invalid,
#com-users-login__form #password.is-invalid,
#com-users-login__form #username.form-control-danger,
#com-users-login__form #password.form-control-danger{ border-color:#dc3545 !important; }

#user-registration {
  font-size: 16px !important;
}

/*Home Page Features*/
.anorra-features {--gap:24px; --card-radius:16px; --card-bg:#fff; --ink:#0e2e44; --muted:#5f6b75; --line:#e8edf2;}
.anorra-features {margin-top:24px}
.anorra-features .af-grid {display:grid; grid-template-columns:repeat(5,1fr); gap:var(--gap)}
@media (max-width:1400px){.anorra-features .af-grid{grid-template-columns:repeat(4,1fr)}}
@media (max-width:1100px){.anorra-features .af-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:800px){.anorra-features .af-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.anorra-features .af-grid{grid-template-columns:1fr}}

.anorra-features .af-card {background:var(--card-bg); border:1px solid var(--line); border-radius:var(--card-radius); padding:18px 16px; display:flex; gap:14px; align-items:flex-start; transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease}
.anorra-features .af-card:hover {transform:translateY(-2px); box-shadow:0 8px 24px rgba(0,0,0,.06); border-color:#d9e3ec}
.anorra-features .af-ico {flex:0 0 36px; height:36px; display:grid; place-items:center; border-radius:12px; background:#eef4f8; color:var(--ink); font-size:18px}
.anorra-features .af-title {margin:0 0 6px 0; font-size:18px; line-height:1.2; color:var(--ink)}
.anorra-features .af-text {margin:0; font-size:14.5px; line-height:1.45; color:var(--muted)}

/*Full Feature Page*/
  .feature-container {
    padding: 20px;
    font-family: 'Sarabun', sans-serif;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
  }
  
  /* Media query for mobile devices */
@media (max-width: 768px) {
  .feature-container {
    padding: 0px;
  }
}

  @media (max-width: 900px) {
    .feature-container {
      grid-template-columns: repeat(2, 1fr);
    }
  }

  @media (max-width: 600px) {
    .feature-container {
      grid-template-columns: 1fr;
    }
  }

  .feature-item {
    display: flex;
    align-items: flex-start;
    padding: 15px;
    background: #ffffff;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    transition: transform 0.2s ease;
    font-family: 'Sarabun', sans-serif;
    position: relative;
    z-index: 1;
  }

  .feature-item-fullwidth {
    grid-column: 1 / -1;
    display: flex;
    align-items: flex-start;
    padding: 20px;
    background: #f9f9f9;
    border-radius: 8px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
    transition: transform 0.2s ease;
    font-family: 'Sarabun', sans-serif;
    position: relative;
    z-index: 1;
  }

  .feature-item:hover, .feature-item-fullwidth:hover {
    transform: translateY(-5px);
  }

  .feature-inner {
    display: flex;
    align-items: flex-start;
    gap: 20px;
    width: 100%;
  }

  .feature-left-column {
    display: flex;
    flex-direction: column;
    gap: 20px;
  }

  .feature-icon {
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    position: relative;
    cursor: pointer;
    flex-shrink: 0;
    padding-left: 20px;
  }

  .feature-icon i {
    font-size: 24px;
    margin-right: 15px;
    color: #2c3e50;
  }

  .feature-icon i.fas.fa-circle-question {
    color: #7a7b7c;
  }

  .feature-tooltip {
    visibility: hidden;
    background-color: #333;
    color: #fff;
    text-align: left;
    padding: 8px 10px;
    border-radius: 4px;
    position: absolute;
    top: 0;
    left: 100%;
    word-wrap: break-word;
    white-space: normal;
    z-index: 1;
    font-size: 16px;
    min-width: 250px;
    box-sizing: border-box;
    margin-left: 5px;
  }

  .feature-tooltip::after {
    content: "";
    position: absolute;
    left: -11px;
    top: 11%;
    transform: translateY(-50%);
    border-width: 6px;
    border-style: solid;
    border-color: transparent #333 transparent transparent;
  }

  .feature-icon:hover .feature-tooltip {
    visibility: visible;
  }

  .feature-right-column {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
  }

  .feature-title {
    font-weight: bold;
    margin-bottom: 10px;
    color: #34495e;
    font-family: 'Sarabun', sans-serif;
    line-height: 30px;
    margin-top: 0;
    font-size: 25px;
  }

  .feature-paragraph {
    font-size: 16px;
    color: #7f8c8d;
    line-height: 1.5;
    font-family: 'Sarabun', sans-serif;
    padding-right: 10px;
    margin-top: 4px;
  }
  
  .feature-h1 {
    text-align: center;
    color: #2c3e50;
    margin-bottom: 30px;
    font-family: 'Sarabun', sans-serif;
    font-size: 60px;
  }

  .feature-h2 {
    color: #484a4b;
    margin-top: 30px;
    margin-bottom: 15px;
    font-size: 35px;
    font-family: 'Sarabun', sans-serif;
  }

/*Services Page*/
:root{
  --blue:#17496f;
  --grey:#484a4b;
  --text:#1e2430;
  --muted:#525a6a;
  --line:#e7eaf0;
  --bg:#ffffff;
  --shadow:0 8px 22px rgba(12,18,28,.08);
  --shadow-hover:0 14px 34px rgba(12,18,28,.16);
}

/* Container */
.anorra-services-catalog{
  max-width:1200px;
  margin:0 auto;
  padding:28px 16px 34px;
  font-family:ui-sans-serif, -apple-system, Segoe UI, Roboto, Inter, Helvetica, Arial;
  color:var(--text);
  font-size:16px;
}

/* Unique headings */
.svc-h1{
  font-size:32px;
  line-height:1.25;
  margin:0 0 18px;
  letter-spacing:.2px;
  color:var(--text);
}
.svc-title{
  font-weight:700;
  font-size:20px;
  line-height:1.25;
  display:flex;
  align-items:center;
  gap:8px;
}

/* Grid: desktop 3, tablet portrait 2, mobile 1 */
.svc-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
/* Two columns on any screen 1366px or smaller, except mobile */
@media (min-width:641px) and (max-width:1366px) {
  .svc-grid { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:640px){
  .svc-grid{ grid-template-columns:1fr; }
}

/* Cards */
.svc-card{
  background:var(--bg);
  border:1px solid var(--line);
  border-radius:16px;
  padding:18px;
  box-shadow:var(--shadow);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.svc-card:hover{ transform:translateY(-3px); box-shadow:var(--shadow-hover); border-color:#d7dde6; }

/* Body text */
.svc-desc{ color:var(--muted); font-size:16px; line-height:1.6; margin:8px 0 12px; }
.svc-list{ margin:0 0 14px 18px; padding:0; color:var(--text); font-size:16px; line-height:1.55; }
.svc-list li{ margin:6px 0; }

/* Tags */
.svc-bestfor{ display:flex; gap:10px; flex-wrap:wrap; margin-bottom:14px; }
.tag{
  font-size:16px; padding:6px 12px; border:1px solid var(--line);
  border-radius:999px; background:#f6f8fb; color:#2b3240;
}

/* Buttons (unique class) */
.svc-actions {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between; /* spacing on large screens */
  flex-wrap: nowrap;
}

.svc-btn {
  text-transform: capitalize;
  font-weight: 600;
  font-size: 15px;
  line-height: 1.25;
  padding: 7px 20px;
  position: relative;
  display: inline-flex;           /* allows centering */
  align-items: center;            /* vertical center */
  justify-content: center;        /* horizontal center */
  text-align: center;             /* center any wrapped text */
  white-space: nowrap;            /* prevent wrapping except on mobile */
  border: 1px solid transparent;
  letter-spacing: -0.4px;
  border-radius: 10px;
  text-decoration: none;
  min-width: 120px;
  transition: background .15s ease, color .15s ease, border-color .15s ease;
}

.svc-btn-blue { background: var(--blue); color: #fff; border: 1px solid var(--blue); }
.svc-btn-blue:hover { background: var(--grey); border-color: var(--grey); color: #fff; }

.svc-btn-grey { background: var(--grey); color: #fff; border: 1px solid var(--grey); }
.svc-btn-grey:hover { background: var(--blue); border-color: var(--blue); color: #fff; }

/* On phones, allow wrapping and center buttons vertically */
@media (max-width: 640px) {
  .svc-btn {
    white-space: normal; /* allow text to wrap on small screens */
  }
  .svc-actions {
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
}

/*Registration Form*/
legend {
  font-size: 30px;
  font-weight: bold;
}

/*Offcanvas Menu*/
@media (max-width: 1366px) {
  .item-527 {
    display: none !important;
  }
}

.offcanvas-menu .offcanvas-inner {
  padding: 0px 25px !important;
}


/* Prevent horizontal overflow on tablets (2‑col layout) */
@media (min-width: 641px) and (max-width: 1366px) {
  .svc-actions{
    justify-content: center;   /* center the pair */
    flex-wrap: wrap;           /* allow them to wrap if needed */
    gap: 10px 12px;            /* keep nice spacing when wrapping */
  }
  .svc-btn{
    white-space: normal;       /* allow wrap for long labels */
    max-width: 100%;           /* never exceed card width */
  }
}

/* Extra safety: never let the section scroll sideways */
.anorra-services-catalog { overflow-x: hidden; }



@media (max-width:640px){
  .svc-actions{ flex-direction:column; align-items:center; }
  .svc-btn{ width:100%; max-width:340px; }
}

/* Mobile from 1366px and below */
@media (max-width: 1366px){
  /* show hamburger */
  #offcanvas-toggler,
  .offcanvas-toggler-secondary,
  .offcanvas-toggler-full { display: inline-flex !important; }

  /* hide desktop menu */
  #sp-header .sp-megamenu-wrapper,
  #sp-header .sp-megamenu-parent { display: none !important; }



/* Desktop above 1366px */
@media (min-width: 1367px){
  #offcanvas-toggler,
  .offcanvas-toggler-secondary,
  .offcanvas-toggler-full { display: none !important; }
  #sp-header .sp-megamenu-wrapper { display: block !important; }
}

/*easyblog*/

#eb .reset-heading {
  font-size: 50px !important;
  line-height: 60px !important;
}

.eb-entry-body p {
  font-size: 18px !important;
  line-height: 24px !important;
}

/* EasyBlog overrides: single entry pages */
body.com_easyblog.view-entry #eb .eb-entry-head h1.eb-entry-title.reset-heading {
  font-size: 40px !important;
  line-height: 50px !important;
  font-weight: 700 !important;
}

/* Article body headings (H2–H6) */
body.com_easyblog.view-entry #eb .eb-entry-article h2,
body.com_easyblog.view-entry #eb .eb-entry-article h3,
body.com_easyblog.view-entry #eb .eb-entry-article h4,
body.com_easyblog.view-entry #eb .eb-entry-article h5,
body.com_easyblog.view-entry #eb .eb-entry-article h6 {
  font-size: 30px !important;
  line-height: 40px !important;
  font-weight: 700 !important;
}

/* Optional: catch preview/print states too */
body.com_easyblog.view-entry #entry-2 .eb-entry-title,
body.com_easyblog.view-entry #entry-2 .eb-entry-article h2,
body.com_easyblog.view-entry #entry-2 .eb-entry-article h3,
body.com_easyblog.view-entry #entry-2 .eb-entry-article h4,
body.com_easyblog.view-entry #entry-2 .eb-entry-article h5,
body.com_easyblog.view-entry #entry-2 .eb-entry-article h6 { /* no extra rules; keeps specificity high */ }

/*RS Forms Contact Page*/
/* Contact form field styling – matches login/registration fields */
.formContainer input[type="text"],
.formContainer input[type="email"],
.formContainer textarea,
.formContainer select {
    background-color: #ffffff !important;
    border: 1px solid #ccc !important;
    border-radius: 5px !important;
    padding: 8px 10px !important;
    box-shadow: none !important;
    color: #333 !important; /* Adjust text color if needed */
}

/* Optional: consistent font size for all inputs */
.formContainer input[type="text"],
.formContainer input[type="email"],
.formContainer textarea,
.formContainer select {
    font-size: 16px;
    line-height: 1.4;
}

/*Get a Quote Form*/
/*RSForm Get a Quote*/
/* Add background, border, and radius to the entire form container */
#rsform_3_page_0 {
    background-color: #f8f9fa; /* Light background color */
    border: 4px solid #ced4da; /* Border color */
    border-radius: 20px; /* Rounded corners */
    padding: 20px; /* Padding inside the form */
    max-width: 800px; /* Limit width */
    margin: 0 auto; /* Center the form on the page */
}


.interest {
  margin-top: 15px;
  margin-bottom: -22px;
  font-weight: 700;
}

strong.formRequired {
  display: none !important;
}

.disclaimer {
  text-align: center;
  font-size: 14px;
}

/* Reduce bottom margin for all fields in the top two columns */
#rsform_3_page_0 .col-md-6 > .row.mb-3 {
    margin-bottom: 5px !important; /* Reduce spacing */
}

/* Add top margin to the checkbox section */
#rsform_3_page_0 .rsform-block-our-services {
    margin-top: 20px !important; /* Adjust value as needed to control spacing */
}

/* Center the two-column layout for the first 6 fields */
#rsform_3_page_0 .formContainer .row.mb-3 {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* Left-align labels and input fields within their columns */
#rsform_3_page_0 .col-md-6 .formControlLabel,
#rsform_3_page_0 .col-md-6 .formControls {
    text-align: left;
    width: 100%;
}

/* Explicit three-column layout for checkboxes using CSS grid */
#rsform_3_page_0 .rsform-block-our-services .formControls {
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* Three equal columns */
    gap: 5px; /* Space between checkboxes */
    width: 100%;
    font-size: 14px;
}

/* Ensure full-width alignment for the "Tell us what you need" field */
#rsform_3_page_0 .rsform-block-description .formControls {
    width: 100%;
    display: flex;
}

#rsform_3_page_0 .rsform-block-description .rsform-text-box {
    width: 100%; /* Ensures textarea spans the full width */
    height: 50px;
}

/* Style and center the submit button */
#rsform_3_page_0 .rsform-block-submit .formControls {
    display: flex;
    justify-content: center;
    width: 100%;
}

#rsform_3_page_0 .rsform-block-submit .rsform-submit-button {
    font-size: 25px; /* Button text size */
    font-weight: bold; /* Bold text */
    text-transform: uppercase; /* Capitalize text */
    padding: 10px 20%; /* Adjust padding for button size */
	border-color: rgba(124, 123, 65, 0.75);
    background-color: rgba(136, 135, 71, 0.75);
}

/* Hover effect */
#rsform_3_page_0 .rsform-block-submit .rsform-submit-button:hover {
  background-color: #555873; /* Adjust to your preferred hover color */
  border-color: #3e4054; /* Optional: change border color on hover */
  color: #ffffff; /* Optional: set text color on hover */
}

#rsform_3_page_0 .form-control {
  color: #9d9e9e;
}


/* Tablet-specific adjustments for two-column layout */
@media (max-width: 1194px) {
    /* Adjust checkbox grid to two columns on tablets */
    #rsform_3_page_0 .rsform-block-our-services .formControls {
        grid-template-columns: repeat(2, 1fr); /* Two columns */
    }
}

#column-wrap-id-febc468e-b1dc-481c-b182-428dc620adba {
  margin-top: 50px !important;
}

.roih3 {
  font-weight: bolder;
  font-size: 35px;
}

.icon-circle {
    background-color: rgb(124, 128, 165); /* Circle background color */
    color: white; /* Text color for "1" */
    border-radius: 50%; /* Make background circular */
    width: 40px; /* Fixed width for circle */
    height: 40px; /* Fixed height for circle */
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-right: 10px; /* Space to the right of the circle */
    vertical-align: middle; /* Align with text */
    font-size: 24px; /* Adjust font size of the number */
    font-weight: bold; /* Make the number bold */
	margin-left: 13px;
	margin-bottom: 3px;
}


/* Completely disable any ::before and ::after pseudo-elements */
.icon-circle::before,
.icon-circle::after {
    content: none !important;
    display: none !important;
}

.circletext {
  margin-left: 72px;
  margin-bottom: 25px;
}

.custom-heading {
    display: flex;
    align-items: flex-start; /* Align icon and text to the top */
}

/* Icon styling to keep it separate from the text */
.custom-heading .icon-circle {
    margin-right: 10px; /* Space between icon and text */
    flex-shrink: 0; /* Prevents icon from shrinking */
}

/* Ensure wrapped text starts directly under the first line */
.custom-heading span {
    line-height: 1; /* Adjust line spacing as needed */
    margin-left: 12px; /* No additional margin needed */
}

.formintro {font-size:16px;}

/*Anorra Image for Home Page Banner iphone adjustments*/
/* Mobile: make the image touch the bottom of its container */
@media (max-width: 767px) {

  /* Remove bottom padding on the column wrapper SP Page Builder adds */
  #column-wrap-id-0a40a032-e834-4f57-9f77-27505c10c2a0 {
    padding-bottom: 0 !important;
  }

  /* Make the right column a flex container and push content to the bottom */
  #column-id-0a40a032-e834-4f57-9f77-27505c10c2a0 {
    display: flex !important;
    flex-direction: column;
    justify-content: flex-end; /* key: image sits at the bottom */
    padding-bottom: 0 !important;
  }

  /* Ensure the addon stack doesn't add spacing */
  #column-id-0a40a032-e834-4f57-9f77-27505c10c2a0 .sppb-column-addons {
    display: flex;
    flex-direction: column;
    gap: 0 !important;
  }

  /* Remove default addon margins */
  #sppb-addon-wrapper-acb51e0e-8b91-440a-b17e-bfe65cf41db9 {
    margin-bottom: 0 !important;
  }

  /* Kill baseline gap and any residual spacing around the image */
  #sppb-addon-wrapper-acb51e0e-8b91-440a-b17e-bfe65cf41db9 .sppb-addon-single-image-container {
    margin: 0 !important;
    line-height: 0 !important;
  }

  /* Image: block-level, no margin, no extra space under it */
  #sppb-addon-wrapper-acb51e0e-8b91-440a-b17e-bfe65cf41db9 img {
    display: block !important;
    width: 100%;
    height: auto;
    margin: 0 !important;
    vertical-align: bottom;
  }
}

/* Safety: remove any global bottom padding SP Page Builder might add to rows on phones */
@media (max-width: 767px) {
  .sppb-row {
    padding-bottom: 0 !important;
  }
}

@media (max-width: 767px) {
  /* Collapse default stacked spacing in this row */
  .sppb-row.sppb-no-gutter > .sppb-row-column { margin-bottom: 0 !important; }

  /* Remove trailing space from the LEFT text side */
  #section-id-e5740992-67a8-4f3e-9b6e-b7e8344d8093,
  #section-id-e5740992-67a8-4f3e-9b6e-b7e8344d8093 .sppb-container-inner,
  #section-id-e5740992-67a8-4f3e-9b6e-b7e8344d8093 .sppb-row,
  #section-id-e5740992-67a8-4f3e-9b6e-b7e8344d8093 .sppb-row-column,
  #column-wrap-id-5f3af05e-898c-486a-a333-c40543ae8c3d,
  #column-id-5f3af05e-898c-486a-a333-c40543ae8c3d,
  #sppb-addon-wrapper-66fd406d-dd3b-4715-8d56-2777d3d4fffb,
  #sppb-addon-wrapper-7968b00b-279f-47b2-bb0a-25109d7ca364 {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  /* Pull the RIGHT image column upward without moving the text */
  #column-wrap-id-0a40a032-e834-4f57-9f77-27505c10c2a0 {
    margin-top: -140px !important; /* tune this value: -24px, -32px, -48px */
  }

  /* Ensure no top spacing on the image column or its addon */
  #column-id-0a40a032-e834-4f57-9f77-27505c10c2a0,
  #sppb-addon-wrapper-acb51e0e-8b91-440a-b17e-bfe65cf41db9 {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
}

.brand {
  font-family: Inter, Segoe UI, Roboto, Arial, sans-serif;
  font-size: 18px;
  line-height: 24px;
  color: #0b2540;
}

.color-palette div {
  text-align: center;
  font-size: 14px;
  color: #333;
}
.color-palette p {
  margin-top: 8px;
}

.brand .wrap {
  max-width: 1200px;
  margin: 0 auto;
  padding: 48px 20px;
}

.brand h1 {
  font-size: 34px;
  margin: 0 0 8px;
}

.brand .sub {
  color: #484a4b;
  margin: 0 0 20px;
}

/* Info block */
.brand .info {
  border: 1px solid #d7e7f7;
  background: #ffffff;
  border-radius: 16px;
  padding: 18px 20px;
  margin: 0 0 28px;
}
.brand .info h2 {
  font-size: 22px;
  margin: 0 0 10px;
}
.brand .info h3 {
  font-size: 18px;
  margin: 16px 0 8px;
}
.brand .info ul {
  margin: 6px 0 0 20px;
}

.brand .section {
  margin-top: 32px;
}
.brand .section h2 {
  font-size: 24px;
  margin: 0 0 14px;
}

.brand .grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}
.brand .grid.two {
  grid-template-columns: repeat(2, 1fr);
}

.brand .card {
  border: 1px solid #e3e3e3;
  border-radius: 16px;
  background: #fff;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.brand .media {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 170px;
  padding: 16px;
  border-bottom: 1px solid #e3e3e3;
  background: #ffffff;
  border-top-left-radius: 16px;
  border-top-right-radius: 16px;
}
.brand .media img {
  max-width: 90%;
  max-height: 140px;
  display: block;
}

/* Middle box in 3-col rows gray */
.brand .section .grid:not(.two) .card:nth-child(2) .media {
  background: #d8d8d8;
}

.brand .body {
  padding: 16px;
}
.brand .title {
  font-weight: 600;
  margin: 0 0 10px;
}

/* Buttons (all) */
.brand .btns {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.brand .btn,
.brand .cta .btn-primary {
  display: inline-block;
  padding: 8px 16px;
  border: 1px solid #0e3a5b;
  border-radius: 999px;
  text-decoration: none;
  color: #ffffff;
  background: #0e3a5b;
  font-size: 14px;
  font-weight: 600;
  text-align: center;
  min-width: 64px;
}
.brand .btn:hover,
.brand .cta .btn-primary:hover {
  background: rgb(93, 106, 145);
  border-color: rgb(93, 106, 145);
}

/* Footer CTA alignment */
.brand .cta {
  margin: 36px 0 0;
  display: flex;
  justify-content: center;
}

@media (max-width: 980px) {
  .brand .grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 640px) {
  .brand .grid,
  .brand .grid.two {
    grid-template-columns: 1fr;
  }
}

.color-swatch {
  width: 100px;
  height: 100px;
  border-radius: 8px;
}

.color-palette {
  display: flex;
  gap: 20px;
  margin-top: 20px !important;
}

.bgmargin {
  margin-bottom:20px;
}

/* Added from branding-guide */
.branding-guide h1 {
  font-size: 2.5rem;
  color: #0a1b2b;
  margin-bottom: 20px;
}
.branding-guide h2 {
  font-size: 1.8rem;
  color: #0a1b2b;
  margin: 40px 0 15px;
  border-bottom: 1px solid #e0e0e0;
  padding-bottom: 10px;
}
.branding-guide p {
  color: #555555;
  margin-bottom: 20px;
}
