/**************************************************************************************/
/*
/*		Designed by 'AS Designing'
/*		Web: http://www.asdesigning.com
/*		Web: http://www.astemplates.com
/*		License: GNU/GPL
/*
/**************************************************************************************/

/**************************************************************************************/
/**************************************************************************************/
/*   Elements
/**************************************************************************************/
/**************************************************************************************/

* {
  padding: 0;
  margin: 0;
  border: 0px;
}

html,
body {
  height: 100%;
}

body {
  margin: 0px;
  line-height: 20px;
  background-position: left top;
  font-family: Tahoma, Geneva, sans-serif;
  font-size: 13px;
  color: #1767A5;
  background-color: #f7f8f9;
  background-image: url(../images/bg.png);
}

.container {
  position: relative;
}

img {
  max-width: 100%;
}

a {
  text-decoration: none;
  color: #666;
}

a:focus {
  outline: none;
}

a:hover,
a.selected {
  color: #f3594c;
  text-decoration: none;
}

hr {
  border-top: 1px solid #eeeeee;
  border-bottom: 1px solid #ffffff;
}

p {
  margin: 0;
  padding-bottom: 25px;
}

.page-featured p {
  padding-bottom: 25px;
}

li {
  line-height: 20px;
  list-style-image: url("../images/li.style.default.png");
  list-style-position: outside;
}

.custom-table ul li {
  padding: 0 15px 20px 0;
}

/**************************************************************************************/
/*   Forms																			  */

legend {
  color: #666;
  border-bottom: 1px solid #e5e5e5;
  font-size: 14px;
  line-height: 22px;
  padding-bottom: 15px;
}

legend small {
  color: #999999;
}

input,
textarea {
  width: 220px;
}

textarea {
  resize: none;
}

textarea.invalid {
  border: 1px solid #0099cc;
}

select {
  border: 1px solid #bbb;
  background-color: #ffffff;
}

input,
button,
select,
textarea {
  font-family: Arial, Helvetica, sans-serif;
}

select,
textarea,
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
.uneditable-input {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 0px;
  color: #999999;
}

textarea,
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
.uneditable-input {
  background-color: #fff;
  border: 1px solid #d4d4d4;
  -webkit-box-shadow: 0px 0px 1px 0px #fff inset;
  -moz-box-shadow: 0px 0px 1px 0px #fff inset;
  box-shadow: 0px 0px 1px 0px #fff inset;
}

input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"] {
  line-height: 1 !important;
  padding: 7px 6px 6px !important;
  height: auto !important;
}

textarea:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="time"]:focus,
input[type="week"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="color"]:focus,
.uneditable-input:focus {
  border-color: #0099cc;
}

select:focus,
input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
  outline: thin dotted #666;
}

input[type="radio"],
input[type="checkbox"] {
  margin: 3px 0 0;
}

.input-block-level {
  display: block;
  width: 100%;
  min-height: 30px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.label-info,
.badge-info {
  background-color: #0099cc;
}

.page-login form .control-group {
  margin: 0;
}

.checkbox-radio-wrap__inline {
  display: inline-block;
  margin-left: 6px;
  vertical-align: top;
}

.checkbox-radio-wrap__inline input[type="radio"],
.checkbox-radio-wrap__inline input[type="checkbox"] {
  margin: -2px 0 0 0;
}

.page-registration {
  margin-left: 20px;
  padding-bottom: 30px;
}

.page-registration form label,
.page-remind form label,
.page-reset form label,
.page-login form label,
.page-login form label,
.page-profile__edit form label {
  display: inline-block;
  margin-right: 20px;
}

.page-remind form button,
.page-reset form button {
  display: inline-block;
  margin-left: 10px;
}

.form-vertical label {
  display: inline-block;
}

#form-login-remember label {
  margin-bottom: 20px;
}

.com-users-registration input {
  min-width: 300px;
}

/**************************************************************************************/
/*   Headings and Titles															  */

h1,
h2,
h3,
h4 {
  margin-top: 0px;
  letter-spacing: 0px;
}

h2,
h1,
#member-registration legend {
  margin-bottom: 15px;
  padding-top: 5px;
  padding-bottom: 10px;
  font-size: 24px;
  line-height: 30px;
  font-weight: normal;
  text-transform: uppercase;
}

h3 {
  margin-bottom: 0px;
  padding-bottom: 14px;
  font-size: 18px;
  line-height: 22px;
  font-weight: normal;
  text-transform: uppercase;
}

aside h3.item_title,
aside h3.item_title a {
  text-transform: uppercase;
  font-size: 16px;
  color: #17a6ca;
}

aside h3.item_title a:hover {
  color: #666;
}

.page-featured h3 {
  padding: 0px 0px 10px;
}

h4 {
  font-size: 16px;
}

.nspArt h4.nspHeader {
  font-size: 18px;
}

.nspArt h4.nspHeader a:hover {
  color: #f3594c;
}

h5 {
  font-size: 14px;
}

h1 small,
h2 small,
h3 small,
h4 small,
h5 small,
h6 small {
  color: #999999;
}

h1,
.page_header h1,
.page-header h1,
.category_title h2,
.page-item .item_header h2.item_title,
#member-registration legend,
.page_header h2,
.page-header h2,
#member-registration legend {
  border-bottom: 5px solid #f3594c;
  margin-bottom: 25px;
  padding-top: 0;
}

.com-users-remind .page-header,
.com-users-reset .page-header {
  padding-left: 20px;
}

.item__featured .item_title {
  overflow: hidden;
}

.item__module h2.item_title {
  border-bottom: none;
}

.item__featured .item_header h2 {
  margin-bottom: 10px;
}

.page-header {
  padding-bottom: 9px;
  margin: 20px 0 30px;
}

/**************************************************************************************/
/*   Images																			  */

.item_img,
.category_img,
.img-intro-none img,
.item_fulltext img,
.random-image img,
.nspArt img.nspImage {
  margin-bottom: 25px;
  display: inline-block;
}

.item_img img,
.category_img img,
.item_fulltext img,
.random-image img,
aside .img-intro__left img,
aside .img-intro__right img {
  width: auto;
  border: 0px solid #ccc;
  background: #fff;
  padding: 0px;
}

aside .item_img img {
  background: #fff;
}

.page-item .item-image img {
  border: none;
}

#featured-row img {
  border: none;
  background: none;
}

.nspArt img.nspImage {
  margin-bottom: 25px;
  width: 100%;
  transition: all 0.5s;
  border: 0px solid #fff !important;
}

.nspArt img.nspImage:hover {
  -ms-transform: scale(0.9, 0.9); /* IE 9 */
  -webkit-transform: scale(0.9, 0.9); /* Chrome, Safari, Opera */
  transform: scale(0.9, 0.9);
  transition: all 0.5s;
}

.img-intro__none,
.img-full__none {
  margin-bottom: 25px;
}

.span9 .row-fluid [class*="span"] .img-intro__none,
.span9 .row-fluid [class*="span"] .img-full__none {
  width: 96.5%;
}

.span6 .row-fluid [class*="span"] .img-intro__none,
.span6 .row-fluid [class*="span"] .img-full__none {
  width: 97%;
}

.img-intro__none img,
.img-full__none img {
  width: 100%;
}

.page-category.page-category__testimonials .img-intro__left,
.img-intro__left,
.item-image.left,
.img-full__left,
.pull-left img,
img.left {
  float: left;
  margin: 0 20px 15px 0px;
  max-width: 50%;
}

.img-intro__right,
.item-image.right,
.img-full__right,
.pull-right img,
img.right {
  float: right;
  margin: 0 0 21px 25px;
  max-width: 50%;
}

aside .img-intro__left,
aside .img-intro__right {
  margin: 3px 25px 15x 0px;
}

img.noborder,
.no-border {
  border: none !important;
  box-shadow: none !important;
}

.page-blog .items-row.cols-3 .item_img.img-intro {
  margin: 0px 0px 25px 0px;
  width: 96%;
}

.page-blog .items-row.cols-3 .item_img.img-intro img {
  width: 100%;
  overflow: hidden;
}

/**************************************************************************************/
/*   Captions																		  */

.img_caption {
  text-align: center !important;
}

.img_caption.left {
  float: left;
  margin-right: 1em;
}

.img_caption.left p {
  clear: left;
  text-align: center;
}

.img_caption.right {
  float: right;
  margin-left: 1em;
}

.img_caption.right p {
  clear: right;
  text-align: center;
}

.img_caption.none {
  margin-left: auto;
  margin-right: auto;
}

/**************************************************************************************/
/*   Lists																			  */

ul.categories-module h5 {
  font-size: 1em;
  line-height: inherit;
  font-weight: normal;
  margin: 0;
}

.categories-module,
.archive-module {
  margin: 0;
}

.categories-module li,
.archive-module li {
  line-height: 30px;
  padding: 0 0 0 20px;
  list-style: none;
  list-style-image: none;
  background: url("../images/styles/default/li.style.png") left 11px no-repeat;
}

.categories-module li a,
.archive-module li a {
  font-size: 14px;
  line-height: 30px;
  color: #666;
}

.moduletable ul {
  margin-left: 0px;
}

.moduletable ul li {
  line-height: 22px;
  list-style-image: url("../images/li.style.png");
  list-style-position: inside;
}

.moduletable ul.item-list li {
  list-style: none;
  list-style-image: none;
  background: url("../images/li.style.png") left 11px no-repeat;
  padding: 0 0 0 25px;
}

.moduletable ul li a {
  top: -1px;
  position: relative;
}

/**************************************************************************************/
/*   Buttons																		  */

a.btn,
.btn_info,
.btn-info,
a.readmore,
.btn-group button.btn,
.btn-primary,
.btn_primary,
.contentpane .button,
.mod-newsflash a.readmore {
  background: url("../images/bg.readmore.png");
  background-repeat: no-repeat;
  background-position: left top;
  margin-top: 0;
  margin-left: 25px;
  font-size: 13px;
  line-height: 20px;
  border: none;
  border-radius: 0;
  float: right;
  color: #666;
  padding: 0 0 0px 30px;
  text-transform: lowercase;
  transition: all 0.5s;
}

a.btn:hover,
a.readmore:hover,
.btn_info:hover,
.btn-info:hover,
.btn_info:active,
.btn-info:active,
.btn_info.active,
.btn-info.active,
.btn_info.disabled,
.btn-info.disabled,
.btn_info[disabled],
.btn-info[disabled],
.btn-primary:hover,
.btn_primary:hover,
.btn-primary:active,
.btn_primary:active,
.btn-primary.active,
.btn_primary.active,
.btn-primary.disabled,
.btn_primary.disabled,
.btn-primary[disabled],
.btn_primary[disabled],
.contentpane .button:hover {
  color: #000;
  background: url("../images/bg.readmore.png");
  background-repeat: no-repeat;
  background-position: left bottom;
  transition: all 0.5s;
}

.edit .btn-group button.btn,
.edit a.btn,
.com_config .btn-group button.btn,
.com_config a.btn {
  background-image: none;
  background-color: #4a95cc;
  color: #fff;
  line-height: 14px;
  padding: 7px 30px;
}

.edit .btn-group button.btn:hover,
.edit a.btn:hover,
.com_config .btn-group button.btn:hover,
.com_config a.btn:hover {
  background-color: #f3594c;
}

.page-login button {
  margin-top: 20px;
}

.btn_info.active,
.btn-info.active,
.btn_info:active,
.btn-info:active,
.btn-primary.active,
.btn_primary.active,
.btn-primary:active,
.btn_primary:active {
  box-shadow: none;
}

a.btn.jmodedit {
  background: url("../images/bg.tooltip.png");
  background-repeat: no-repeat;
  background-position: center;
  line-height: 25px;
  height: 25px;
}

.btn,
.mod-newsflash a.readmore {
  text-shadow: none;
}

.contentpane .button {
  margin-top: 20px;
  margin-left: 20px;
}

.search .button {
  padding: 0px 27px !important;
  background: none;
}

.search input.search-query {
  border: none;
  width: 100% !important;
}

#aside-left a.btn,
#aside-left .btn_info,
#aside-left .btn-info,
#aside-left .btn-primary,
#aside-left .btn_primary,
#aside-left .button,
#aside-left .acysubbuttons input.button,
#aside-left button,
#aside-right a.btn,
#aside-right .btn_info,
#aside-right .btn-info,
#aside-right .btn-primary,
#aside-right .btn_primary,
#aside-right .button,
#aside-right .acysubbuttons input.button,
#aside-right button {
  background-color: #4a95cc;
  color: #fff;
  line-height: 14px;
  padding: 7px 30px;
  background-image: none;
}

#aside-left a.btn:hover,
#aside-left .btn_info:hover,
#aside-left .btn-info:hover,
#aside-left .btn-primary:hover,
#aside-left .btn_primary:hover,
#aside-left .button:hover,
#aside-left .acysubbuttons input.button:hover,
#aside-left button:hover,
#aside-right a.btn:hover,
#aside-right .btn_info:hover,
#aside-right .btn-info:hover,
#aside-right .btn-primary:hover,
#aside-right .btn_primary:hover,
#aside-right .button:hover,
#aside-right .acysubbuttons input.button:hover,
#aside-right button:hover {
  background-color: #f3594c;
  color: #fff;
}

#footer a.btn,
#footer .btn_info,
#footer .btn-info,
#footer .btn-group button.btn,
#footer .btn-primary,
#footer .btn_primary,
#footer .contentpane .button {
  background-color: #f3594c;
  color: #fff;
  background-image: none;
}

#footer a.btn:hover,
#footer .btn_info:hover,
#footer .btn-info:hover,
#footer .btn-group button.btn:hover,
#footer .btn-primary:hover,
#footer .btn_primary:hover,
#footer .contentpane .button:hover {
  background-color: #4a95cc;
}

#aside-left input.button,
#aside-right input.button {
  background-color: transparent;
}

/**************************************************************************************/
/*   Pagination																		  */

.pagination span,
.pagination a {
  background: none !important;
  padding: 0 6px;
  line-height: 20px;
}

.pagination ul {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  border: none;
  box-shadow: none;
  margin: 0 auto;
}

.pagination ul li .pagenav {
  font: 800 14px/18px;
  text-transform: none;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  border: none;
  box-shadow: none;
}

.pagination ul li a.pagenav:hover {
  background: none;
}

.pull-right {
  margin-top: 0px;
}

.tooltip {
  background-color: #000;
  color: #fff;
}

.tooltip.fade.in {
  width: 110px !important;
  padding: 5px;
}

.pagination a.btn {
  border: 1px solid #ddd;
  border-radius: 0;
  padding: 3px 15px;
  background-color: #4a95cc !important;
  color: #fff;
  line-height: 20px;
  height: 20px;
  margin-bottom: 20px;
}

.pagination a.btn:hover {
  background-color: #f3594e !important;
}

.pagination [class^="icon-"]:before,
.pagination [class*=" icon-"]:before {
  font-family: FontAwesome;
}

.icon-angle-right:before {
  content: "\f105";
}

.icon-angle-double-right:before {
  content: "\f101";
}

.icon-angle-left:before {
  content: "\f104";
}

.icon-angle-double-left:before {
  content: "\f100";
}

.pagination ul {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  border: none;
  box-shadow: none;
  margin: 0 auto;
  width: 100%;
  text-align: center;
  display: block;
}

.pagination ul li {
  display: inline-block;
}

.pagination ul li .pagenav,
.pagination ul li .hasTooltip {
  font: 800 14px/18px;
  text-transform: none;
  color: #555555;
  -webkit-border-radius: 0 !important;
  -moz-border-radius: 0 !important;
  border-radius: 0 !important;
  border: none;
  box-shadow: none;
}

.pagination ul li span.pagenav,
.pagination ul li .span.hasTooltip {
  color: #555555;
}

.pagination ul li a.pagenav:hover,
.pagination ul li a.hasTooltip:hover {
  background: none;
  color: #73df06;
}

.pagination ul li.num span.pagenav,
.pagination ul li.num span.hasTooltip {
  color: #73df06;
}

.pagination ul > li > a,
.pagination ul > li > span {
  border-left-width: 1px;
}

/**************************************************************************************/
/*   BlockNumbers																	  */

p.blocknumber {
  min-height: 44px;
  padding: 5px 20px 15px 60px !important;
  position: relative;
}

p.blocknumber a {
  padding: 2px 10px 0 0;
  float: left;
}

span.blocknumber {
  border-radius: 50%;
  font-size: 20px;
  height: 45px;
  left: 0;
  line-height: 45px;
  position: absolute;
  text-align: center;
  width: 45px;
  margin-top: 0px;
  box-shadow: 0px 0px 1px 0px #fff;
  background-color: #4a95cc;
  color: #ffffff;
}

span.blocktitle {
  font-size: 18px;
  padding-bottom: 5px;
  text-transform: uppercase;
  color: #0099cc;
  font-family: "Tangerine", Arial, serif !important;
}

/**************************************************************************************/
/*   Toggling																		  */

.toggle {
  min-height: 30px;
  font-size: 13px;
  font-weight: normal;
  background-image: url("../images/bg.toggle.open.png");
  background-position: left top;
  background-repeat: no-repeat;
  cursor: pointer;
  margin: 0px 0px 0px 0px;
  padding: 6px 20px 3px 60px;
  text-overflow: ellipsis;
  white-space: nowrap;
  clear: both;
  overflow: hidden;
}

.toggle:hover {
  background-image: url("../images/bg.toggle.open.hover.png");
}

.toggle.opened {
  background-image: url("../images/bg.toggle.close.png");
  background-position: left top;
  background-repeat: no-repeat;
}

.toggle.opened:hover {
  background-image: url("../images/bg.toggle.close.hover.png");
}

.toggle_content {
  display: none;
  margin: 15px 0px 20px 0px;
  padding: 25px;
  font-size: 12px;
  font-weight: normal;
  border-radius: 0px;
  background-color: #fdfdfd;
  border: 1px solid #dedede;
  color: #121212;
}

/**************************************************************************************/
/*   Searching																		  */

ul#finder-filter-select-dates li.filter-date {
  margin-bottom: 4px;
  margin-right: 4px;
}

ul#finder-filter-select-dates li.filter-date select.filter-date-operator {
  margin-bottom: 9px;
}

#searchForm fieldset {
  margin-bottom: 20px;
}

#searchForm fieldset label {
  display: inline-block;
  margin-right: 1em;
}

#searchForm .form-limit label {
  float: left;
}

#searchForm .form-limit select {
  float: right;
  position: relative;
  top: -4px;
}

#searchForm .form-limit p {
  overflow: hidden;
  clear: both;
}

dl.search-results {
  margin-bottom: 30px;
}

dl.search-results dt {
  margin-top: 20px;
}

.navbar-form .btn,
.navbar-form .btn-group {
  margin-top: 5px;
}

#mod-finder-searchword {
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
  border-radius: 0px;
  margin-bottom: 4px;
  border: 1px solid #ebebeb;
  box-shadow: none;
}

.highlight {
  color: #4a95cc;
  font-weight: bold;
}

/**************************************************************************************/
/*   Modal																			  */

.modalClose {
  margin: 14px;
}

div.modal.fade.in.loginPopup {
  width: 260px;
  margin: -130px 0 0 -130px;
  top: 50%;
  left: 50%;
}

.login-greeting {
  margin: 0 0 9px 0;
}

.input-modal {
  width: 146px;
}

div.modal.fade {
  z-index: -500;
}

div.modal.fade.in {
  z-index: 1100;
}

/**************************************************************************************/
/*   Social																			  */

.moduletable.social .nav {
  margin: 13px 0px 0px 0px;
  float: right;
}

.moduletable.social ul li {
  text-align: right;
  display: inline-block;
  list-style: none;
  margin-left: 3px;
}

.moduletable.social li a {
  border-radius: 20%;
  display: block;
  float: left;
  font-size: 12px;
  height: 28px;
  line-height: 28px;
  margin-left: 5px;
  text-align: center;
  color: #ffffff !important;
  transition: color 0.3s ease 0.1s;
  width: 28px;
}

#header-row .social [class*="icon-"] {
  background-color: rgba(0, 0, 0, 0) !important;
  color: #ccc !important;
  font-size: 20px;
}

#header-row .social [class*="icon-"]:hover {
  color: #28a6d8 !important;
}

#footer .social [class*="icon-"] {
  background-color: #28a6d8 !important;
}

#footer .social [class*="icon-"]:hover {
  background-color: #007aac !important;
}

.moduletable.social li a:hover {
  transition: color 0.3s ease 0.1s;
}

.moduletable.social img {
  width: auto !important;
  display: none;
}

#footer-row .moduletable.social li a img {
  width: 30px;
  height: 30px;
  line-height: 30px;
  background-color: #4a95cc;
}

#footer-row .moduletable.social li a:hover img {
  background-color: #4a95cc;
}

#footer .social {
  padding-top: 3px;
  vertical-align: top;
  text-align: right;
}

.mod-menu__social {
  position: relative;
  z-index: 50;
}

/**************************************************************************************/
/*   Newsflash																		  */

.mod-newsflash-adv__links .item_content {
  border-radius: 5px;
  padding-bottom: 24px;
}

.mod-newsflash-adv__links .item_content ul {
  margin-bottom: 0;
}

.mod-newsflash-adv__links .item_content ul li {
  line-height: 28px;
}

.mod-newsflash-adv__links .item_content ul li a {
  font-size: 14px;
  line-height: 30px;
  text-decoration: underline;
}

.mod-newsflash-adv__links .item_content h2 {
  text-transform: none;
  padding-bottom: 0;
  line-height: 68px;
  margin-bottom: 20px;
}

.mod-newsflash-adv__links a.readmore {
  background: none;
  padding: 4px 0;
  margin: 0 0 0 45px;
  box-shadow: none;
  border: none;
  font-size: 14px;
}

.mod-newsflash-adv__links .shadow span {
  bottom: 21px;
  width: 92%;
  left: 4%;
}

.mod-newsflash-adv__links.support .item_content {
  padding-bottom: 12px;
}

.mod-newsflash-adv__links.support .item_introtext {
  padding: 0 24px;
  font-size: 14px;
  line-height: 22px;
}

.mod-newsflash-adv__links.support a.readmore {
  margin: 0 0 0 24px;
}

/**************************************************************************************/
/*   Acymailing																		  */

.acymailing_form,
.acymailing_form .acysubbuttons {
  text-align: right;
}

.acymailing_form p {
  padding-bottom: 4px;
}

.acym_module_form input.btn,
#aside-left .acym_module_form input.btn,
#aside-right .acym_module_form input.btn,
.acymailing_form .acysubbuttons .button {
  line-height: 14px;
  padding: 7px 30px;
  margin-top: 17px !important;
  max-width: 50%;
}

.acymailing_module_form span.acymailing_finaltext {
  display: block;
  padding-top: 20px;
  text-align: right;
  clear: both;
}

div.acymailing_module input {
  margin-top: 7px !important;
}

.acym_module_form input {
  width: 95%;
}

#aside-left .acym_module_form input,
#aside-right .acym_module_form input {
  width: 100%;
  max-width: 100%;
}

.onefield .acym__field__error__block {
  color: #9d261d !important;
  text-align: left;
}

/**************************************************************************************/
/*   Back to Top																	  */

#back-top {
  position: fixed;
  bottom: 105px;
  right: 20px;
  z-index: 60;
}

#back-top a {
  width: 46px;
  display: block;
  text-align: center;
  font-size: 12px;
  line-height: 20px;
  text-transform: none;
  text-decoration: none;
  -webkit-transition: 1s;
  -moz-transition: 1s;
  transition: 1s;
}

#back-top span {
  width: 46px;
  height: 46px;
  display: block;
  margin-bottom: 7px;
  background: url("../images/up.arrow.png") no-repeat center center;
  -webkit-transition: 1s;
  -moz-transition: 1s;
  transition: 1s;
  border-radius: 50%;
  background-color: transparent;
}

/**************************************************************************************/
/*   Gallery																	      */

.page-gallery {
  padding: 0 0 20px 20px;
}

.page-gallery h1 {
  padding: 0;
}

.page-gallery .well {
  padding: 18px 20px 22px;
  border: 0px solid #bbb;
  background: #ebeff2;
}

.page-gallery .sorting {
  display: flex;
}

.page-gallery .sorting b {
  line-height: 20px;
}

.page-gallery .sorting ul.btn-group {
  list-style: none;
}

.page-gallery .sorting ul.btn-group li {
  display: inline;
  padding-right: 20px;
}

.page-gallery .item_img,
.page-gallery .item-image {
  margin-bottom: 0;
  display: block;
}

.page-gallery .item_title {
  margin: 0px;
  padding: 0px;
  text-align: center;
  line-height: 32px;
  font-size: 18px;
  letter-spacing: 0px;
  font-weight: 500;
  text-transform: uppercase;
  color: #fff;
}

.page-gallery .list .item_title,
.page-gallery .list .item_title a {
  color: #626262;
  font-size: 18px;
}

.page-gallery .item_title a {
  text-align: centre !important;
  color: #fff;
}

.page-gallery .item_title a:hover {
  color: #d96c40;
}

.page-gallery .list .item_introtext p {
  color: #626262;
  text-align: center;
}

.page-gallery .list .item_more a {
  color: #626262;
  font-size: 13px;
  padding: 3px 0 0px 30px;
  margin-top: 20px;
  font-weight: bold;
  line-height: 20px;
}

.page-gallery .list .item_more a.hover_more {
  background-color: transparent;
  background-image: none !important;
  padding-right: 10px;
  color: #0099cc;
  font-size: 11px;
}

.page-gallery .list .item_more a.hover_more:hover {
  color: #d96c40;
}

.page-gallery ul#filters li {
  text-transform: uppercase;
  font-weight: bold;
  font-size: 11px;
  margin: 0px 5px 0 0;
}

.page-gallery li.item {
  margin-bottom: 30px;
}

.page-gallery p {
  padding-bottom: 10px;
  line-height: 16px;
}

.page-gallery .grid .item_introtext p {
  font-size: 14px;
  color: #fff;
  padding: 5px;
  text-align: center;
}

.page-gallery .list .item_introtext p {
  font-size: 12px;
}

.category_child .category_title a {
  display: inline-block;
  margin-right: 12px;
}

.page-gallery .category_desc {
  margin-bottom: 20px;
}

.page-gallery ul.singleColumn li {
  margin-left: 0;
}

.page-gallery .item_img.img-intro .touchGalleryLink img {
  width: 100%;
}

.page-gallery #filters {
  margin: 0 0 0 15px;
}

.page-gallery a.btn.btn-info.filter {
  font-size: 11px;
  font-weight: 500;
  padding: 3px 0;
  background-color: transparent;
  background-image: none !important;
  margin: 0 20px 0 0;
  text-transform: uppercase;
}

.page-gallery a.btn.btn-info.filter.active,
.page-gallery a.btn.btn-info.filter:hover {
  color: #f3594c !important;
}

.page-gallery a.btn.btn-info.filter:not(.active) {
  color: #626262;
}

.page-gallery a.zoom,
.page-item__gallery a.zoom {
  position: relative;
}

.page-gallery a.zoom span.zoom-bg,
.page-item__gallery a.zoom span.zoom-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  opacity: 0;
  filter: alpha(opacity=0);
}

.page-gallery .item_more {
  text-align: center;
}

.page-gallery .grid .item_more {
  padding-top: 5%;
}

.page-gallery .grid .item_more .btn-info {
  margin-top: 0px;
}

.page-gallery .item_more a {
  display: inline-block;
  padding: 2%;
  color: #fff;
  font-size: 1.5em;
  font-weight: normal;
}

.page-gallery .item_more a:hover {
  color: #909090;
}

.page-gallery .item_icons,
.page-item__gallery .item_icons {
  margin-bottom: 9px;
}

ul.singleColumn {
  margin: 0;
}

ul.singleColumn > .item {
  list-style: none;
  width: 100%;
}

.view-article #prevArrow,
.view-article #nextArrow {
  display: none;
}

ul#filters li {
  display: inline-block;
  vertical-align: top;
  margin: 9px 9px 0 0;
}

#isotopeContainer {
  padding-top: 8px;
}

.page-gallery_img {
  margin-left: 0;
}

.category_children .category_child {
  margin-bottom: 20px;
}

#galleryOverlay {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  opacity: 0;
  z-index: 100000;
  overflow: hidden;
  display: none;
  -moz-transition: opacity 1s ease;
  -webkit-transition: opacity 1s ease;
  transition: opacity 1s ease;
  background-image: url(../images/bg.gallery.png);
}

#gallerySlider {
  height: 100%;
  left: 0;
  top: 0;
  width: 100%;
  white-space: nowrap;
  position: absolute;
  -moz-transition: left 0.4s ease;
  -webkit-transition: left 0.4s ease;
  transition: left 0.4s ease;
}

#gallerySlider .placeholder {
  background: url("../images/system/preloader.gif") no-repeat center center;
  height: 100%;
  line-height: 1px;
  text-align: center;
  width: 100%;
  display: inline-block;
}

#gallerySlider .placeholder:before {
  content: "";
  display: inline-block;
  height: 50%;
  width: 1px;
  margin-right: -1px;
}

#gallerySlider .placeholder img {
  display: inline-block;
  max-height: 100%;
  max-width: 100%;
  vertical-align: middle;
}

#gallerySlider.rightSpring {
  animation: rightSpring 0.3s;
  -moz-animation: rightSpring 0.3s;
  -webkit-animation: rightSpring 0.3s;
}

#gallerySlider.leftSpring {
  animation: rightSpring 0.3s;
  -moz-animation: leftSpring 0.3s;
  -webkit-animation: leftSpring 0.3s;
}

.layout-mode {
  float: right;
}

.layout-mode #grid-list {
  margin: 0px;
}

.layout-mode ul.btn-group {
  display: inline-block;
}

.layout-mode ul.btn-group li {
  display: inline-block;
}

.layout-mode ul.btn-group a.btn-info {
  background-image: none !important;
  background-color: transparent;
  padding: 3px;
  height: 18px;
  width: 18px;
  margin-left: 10px;
}

.layout-mode ul.btn-group a.btn-info .fa {
  font-size: 22px;
  color: #d96c40;
}

.layout-mode ul.btn-group a.btn-info.active {
  pointer-events: none;
}

.layout-mode ul.btn-group a.btn-info:not(.active):hover .fa {
  color: #626262;
}

.layout-mode ul.btn-group a.btn-info:not(.active) .fa {
  color: #0099cc;
}

.filters {
  float: left;
}

ul.gallery {
  margin: 0;
  text-align: justify;
  font-size: 0.1px;
  display: block;
  line-height: 0;
}

ul.gallery.list {
  opacity: 0;
  animation: fadeIn 0.2s;
  animation-delay: 1s;
  animation-fill-mode: forwards;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

ul.gallery:after {
  content: "";
  display: inline-block;
  width: 100%;
}

ul.gallery .gallery-item {
  list-style: none;
  opacity: 0;
  filter: alpha(opacity=0);
  display: none;
  font-size: 17px;
  line-height: 25px;
  overflow: hidden;
  margin-top: 1px;
  margin-bottom: 20px;
}

ul.gallery .gallery-item .view .content * {
  color: inherit;
}

ul.gallery .gap {
  list-style: none;
}

ul.gallery .gallery-grid .item_img {
  margin-right: 0;
  float: none;
  max-width: 100%;
}

ul.gallery .gallery-grid .item_img img {
  opacity: 0.99;
  filter: alpha(opacity=99);
}

ul.gallery .gallery-grid.straightDown {
  float: none;
}

ul.gallery .gallery-grid.straightDown .item_img {
  float: left;
  margin: 0 25px 25px 0 !important;
}

ul.gallery .gallery-grid .view a.hover_more {
  background: none !important;
  line-height: inherit;
  border: none;
  color: inherit;
  max-width: none;
  width: auto;
  height: auto;
  margin-left: 0px;
}

ul.gallery .gallery-grid .view a.hover_more span {
  display: none;
}

ul.gallery .gallery-grid .view a.hover_more:hover {
  color: #999;
}

ul.gallery .gallery-grid .view a {
  color: inherit;
  float: none;
}

ul.gallery .gallery-grid .view a:hover {
  color: #999;
}

ul.gallery .gap {
  display: inline-block;
}

ul.gallery .gallery-list {
  margin: 0 0 30px;
  border: 1px solid #e2e2e2;
}

ul.gallery .gallery-list .item_img {
  border: none;
  max-width: 40%;
  pointer-events: none;
}

ul.gallery .gallery-list .view a.hover_more i {
  display: none;
}

ul.gallery .gallery-list .galleryZoom {
  display: none;
}

ul.gallery .item_more a {
  vertical-align: top;
}

ul.gallery.cols-1 .gap,
ul.gallery.cols-1 .gallery-grid {
  width: 100%;
}

ul.gallery.cols-2 .gap,
ul.gallery.cols-2 .gallery-grid {
  width: 48%;
}

ul.gallery.cols-3 .gap,
ul.gallery.cols-3 .gallery-grid {
  width: 32%;
}

ul.gallery.cols-4 .gap,
ul.gallery.cols-4 .gallery-grid {
  width: 24%;
}

.body-gallery .page-header {
  display: none;
}

/* Firefox Keyframe Animations */

@keyframes rightSpring {
  0% {
    margin-left: 0px;
  }
  50% {
    margin-left: -30px;
  }
  100% {
    margin-left: 0px;
  }
}
@keyframes leftSpring {
  0% {
    margin-left: 0px;
  }
  50% {
    margin-left: 30px;
  }
  100% {
    margin-left: 0px;
  }
}

/* Safari and Chrome Keyframe Animations */

@-webkit-keyframes rightSpring {
  0% {
    margin-left: 0px;
  }
  50% {
    margin-left: -30px;
  }
  100% {
    margin-left: 0px;
  }
}
@-webkit-keyframes leftSpring {
  0% {
    margin-left: 0px;
  }
  50% {
    margin-left: 30px;
  }
  100% {
    margin-left: 0px;
  }
}

#prevArrow,
#nextArrow {
  border: none;
  text-decoration: none;
  background: url("../images/gallery/arrows.png") no-repeat;
  opacity: 0.5;
  cursor: pointer;
  position: absolute;
  width: 43px;
  height: 58px;
  top: 50%;
  margin-top: -29px;
  -moz-transition: opacity 0.2s ease;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}

#prevArrow:hover,
#nextArrow:hover {
  opacity: 1;
}

#prevArrow {
  background-position: left top;
  left: 40px;
}

#nextArrow {
  background-position: right top;
  right: 40px;
}

.page-gallery .view {
  overflow: hidden;
  position: relative;
}

.page-gallery .view:hover .mask {
  opacity: 1;
  -moz-transition: opacity 1s ease;
  -webkit-transition: opacity 1s ease;
  transition: opacity 1s ease;
  background: none repeat scroll 0 0 rgba(0, 0, 0, 0.5);
}

.page-gallery .list .view:hover .mask {
  background: transparent;
}

.page-gallery .grid .mask {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  -moz-transition: opacity 1s ease;
  -webkit-transition: opacity 1s ease;
  transition: opacity 1s ease;
  color: #fff;
}

.page-gallery .grid .mask .hide-intro {
  display: none;
}

.page-gallery .list .zoom-icon,
.page-gallery .list .zoom-bg {
  display: none !important;
}

.page-gallery .mask_cont {
  padding: 25px;
}

/**************************************************************************************/
/*	 Magnific Popup for Gallery page                                                  */

.mfp-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  background: #0b0b0b;
  opacity: 0.8;
  filter: alpha(opacity=(0.8 * 100));
}

.mfp-wrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1043;
  position: fixed;
  outline: none !important;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

.mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 0 0px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.mfp-container:before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

.mfp-align-top .mfp-container:before {
  display: none;
}

.mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  text-align: left;
  z-index: 1045;
}

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
  width: 100%;
  cursor: auto;
}

.mfp-ajax-cur {
  cursor: progress;
}

.mfp-zoom-out-cur,
.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: -moz-zoom-out;
  cursor: -webkit-zoom-out;
  cursor: zoom-out;
}

.mfp-zoom {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in;
}

.mfp-auto-cursor .mfp-content {
  cursor: auto;
}

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

.mfp-loading.mfp-figure {
  display: none;
}

.mfp-hide {
  display: none !important;
}

.mfp-preloader {
  color: #cccccc;
  position: absolute;
  top: 50%;
  width: auto;
  text-align: center;
  margin-top: -0.8em;
  left: 8px;
  right: 8px;
  z-index: 1044;
}

.mfp-preloader a {
  color: #cccccc;
}

.mfp-preloader a:hover {
  color: #ffffff;
}

.mfp-s-ready .mfp-preloader {
  display: none;
}

.mfp-s-error .mfp-content {
  display: none;
}

button.mfp-close,
button.mfp-arrow {
  overflow: visible;
  cursor: pointer;
  background: transparent;
  border: 0;
  appearance: none;
  -webkit-appearance: none;
  display: block;
  padding: 0;
  z-index: 1046;
}
button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

.mfp-close {
  width: 44px;
  height: 44px;
  line-height: 44px;
  position: absolute;
  right: 0;
  top: 0;
  text-decoration: none;
  text-align: center;
  opacity: 0.65;
  padding: 0 0 18px 10px;
  color: #ffffff;
  font-style: normal;
  font-size: 28px;
  font-family: Arial, Baskerville, monospace;
}

.mfp-close:hover,
.mfp-close:focus {
  opacity: 1;
}

.mfp-close:active {
  top: 1px;
}

.mfp-close-btn-in .mfp-close {
  color: #85b1d8;
}

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
  color: #ffffff;
  right: -6px;
  text-align: right;
  padding-right: 6px;
  width: 100%;
}

.mfp-counter {
  position: absolute;
  top: 0;
  right: 0;
  color: #cccccc;
  font-size: 12px;
  line-height: 18px;
}

.mfp-arrow {
  position: absolute;
  opacity: 0.65;
  margin: 0;
  top: 50%;
  margin-top: -55px;
  padding: 0;
  width: 90px;
  height: 110px;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.mfp-arrow:active {
  margin-top: -54px;
}

.mfp-arrow:hover,
.mfp-arrow:focus {
  opacity: 1;
}

.mfp-arrow:before,
.mfp-arrow:after,
.mfp-arrow .mfp-b,
.mfp-arrow .mfp-a {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  left: 0;
  top: 0;
  margin-top: 35px;
  margin-left: 35px;
  border: medium inset transparent;
}

.mfp-arrow:after,
.mfp-arrow .mfp-a {
  border-top-width: 13px;
  border-bottom-width: 13px;
  top: 8px;
}

.mfp-arrow:before,
.mfp-arrow .mfp-b {
  border-top-width: 21px;
  border-bottom-width: 21px;
}

.mfp-arrow-left {
  left: 0;
}

.mfp-arrow-left:after,
.mfp-arrow-left .mfp-a {
  border-right: 17px solid #fff;
  margin-left: 31px;
}

.mfp-arrow-left:before,
.mfp-arrow-left .mfp-b {
  margin-left: 25px;
  border-right: 27px solid #3f3f3f;
}

.mfp-arrow-right {
  right: 0;
}

.mfp-arrow-right:after,
.mfp-arrow-right .mfp-a {
  border-left: 17px solid #fff;
  margin-left: 39px;
}

.mfp-arrow-right:before,
.mfp-arrow-right .mfp-b {
  border-left: 27px solid #3f3f3f;
}

.mfp-iframe-holder {
  padding-top: 40px;
  padding-bottom: 40px;
}

.mfp-iframe-holder .mfp-content {
  line-height: 0;
  width: 100%;
  max-width: 900px;
}

.mfp-iframe-holder .mfp-close {
  top: -40px;
}

.mfp-iframe-scaler {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%;
}

.mfp-iframe-scaler iframe {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #000000;
}

img.mfp-img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  line-height: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 40px 0 40px;
  margin: 0 auto;
}

.mfp-figure {
  line-height: 0;
}

.mfp-figure figure {
  margin: 0;
}

.mfp-figure:after {
  content: "";
  position: absolute;
  left: 0;
  top: 40px;
  bottom: 40px;
  display: block;
  right: 0;
  width: auto;
  height: auto;
  z-index: -1;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #444444;
}

.mfp-figure small {
  color: #bdbdbd;
  display: block;
  font-size: 12px;
  line-height: 14px;
}

.mfp-bottom-bar {
  margin-top: 0px;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  cursor: auto;
}

.mfp-title {
  text-align: left;
  line-height: 18px;
  color: #f3f3f3;
  word-break: break-word;
  padding-right: 36px;
}

.mfp-title h3 {
  margin-bottom: 10px;
  color: #fff;
}

.mfp-image-holder .mfp-content {
  max-width: 100%;
}

.mfp-gallery .mfp-image-holder .mfp-figure {
  cursor: pointer;
}

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
  .mfp-img-mobile .mfp-image-holder {
    padding-left: 0;
    padding-right: 0;
  }

  .mfp-img-mobile img.mfp-img {
    padding: 0;
  }

  .mfp-img-mobile .mfp-figure:after {
    top: 0;
    bottom: 0;
  }

  .mfp-img-mobile .mfp-figure small {
    display: inline;
    margin-left: 5px;
  }

  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    margin: 0;
    top: auto;
    padding: 3px 5px;
    position: fixed;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }

  .mfp-img-mobile .mfp-bottom-bar:empty {
    padding: 0;
  }

  .mfp-img-mobile .mfp-counter {
    right: 5px;
    top: 3px;
  }

  .mfp-img-mobile .mfp-close {
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    line-height: 35px;
    background: rgba(0, 0, 0, 0.6);
    position: fixed;
    text-align: center;
    padding: 0;
  }
}

@media all and (max-width: 900px) {
  .mfp-arrow {
    -webkit-transform: scale(0.75);
    -moz-transform: scale(0.75);
    -ms-transform: scale(0.75);
    -o-transform: scale(0.75);
    transform: scale(0.75);
  }

  .mfp-arrow-left {
    -webkit-transform-origin: 0;
    transform-origin: 0;
  }

  .mfp-arrow-right {
    -webkit-transform-origin: 100%;
    transform-origin: 100%;
  }

  .mfp-container {
    padding-left: 0px;
    padding-right: 0px;
  }
}

.mfp-ie7 .mfp-img {
  padding: 0;
}

.mfp-ie7 .mfp-bottom-bar {
  width: 600px;
  left: 50%;
  margin-left: -300px;
  margin-top: 5px;
  padding-bottom: 5px;
}

.mfp-ie7 .mfp-container {
  padding: 0;
}

.mfp-ie7 .mfp-content {
  padding-top: 44px;
}

.mfp-ie7 .mfp-close {
  top: 0;
  right: 0;
  padding-top: 0;
}

/**************************************************************************************/
/*   Testimonials																	  */

blockquote p {
  font-size: 12px;
  line-height: 20px;
}

blockquote a {
  display: block;
  margin: 4px 5px 0px 0px;
}

.blockquote {
  float: left;
  width: 40px;
  height: 40px;
  margin: 0px 15px 10px 0px;
  background-repeat: no-repeat;
  background-image: url("../images/blockquote.png");
}

blockquote small {
  color: #999999;
}

blockquote.pull-right {
  border-right: 5px solid #eeeeee;
}

/**************************************************************************************/
/*   General
/**************************************************************************************/
/**************************************************************************************/

#content-wrapper {
  height: auto !important;
  height: 100%;
  margin: 0px auto;
  width: 1200px;
  opacity: 0;
  transition: opacity 1s ease-in-out 0s;
}

#content-wrapper.visible {
  opacity: 1;
}

.body-top #content-wrapper {
  padding-top: 0;
}

.top-wrapper,
.top-wrapper .container {
  width: 1200px;
  margin: 0 auto;
  background-color: #fff;
}

#top_header .wrapper {
  padding-bottom: 0px;
}

#push {
  height: 180px;
}

.item-separator {
  clear: both;
  height: 25px;
}

.menudesc {
  padding-bottom: 20px;
  margin-bottom: 30px;
  border-bottom: 1px dotted #ccc;
}

.menudesc img {
  float: left;
  margin: 0px 20px 10px 0px;
}

.row-fluid:last-child .menudesc {
  border-bottom: none;
  margin-bottom: 0px;
  padding-bottom: 0px;
}

p .price {
  text-align: right;
  margin: 20px 6px 0px;
  display: block;
}

/**************************************************************************************/

.clearfix:before,
.clearfix:after {
  display: table;
  content: "";
  line-height: 0;
}

.clearfix:after {
  clear: both;
}

.hide-text {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.left {
  float: left;
}

.right {
  float: right;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

/**************************************************************************************/
/*   Header
/**************************************************************************************/
/**************************************************************************************/

.wshadow {
  position: relative;
  z-index: 10;
}

.shadow {
  position: relative;
  z-index: 1;
}

.shadow span {
  bottom: 0px;
  display: block;
  height: 0px;
  left: 1%;
  position: absolute;
  width: 98%;
}

/**************************************************************************************/
/*   Top Header		  																  */

#top-header {
  height: auto !important;
  margin: 0px auto;
  padding: 7px 0px 2px;
  background: #fff;
  min-height: 25px;
  border-bottom: 1px solid #e4e7ea;
  color: #868995;
  font-size: 12px;
}

#top-header ul {
  float: right;
  margin: 0px;
}

#top-header ul li {
  list-style: none;
  float: left;
  padding-left: 5px;
}

#top-header ul li a {
  color: #868995;
  padding: 0px 10px;
}

#top-header ul li a:hover,
#top-header ul li a:active {
  color: #f3594e;
}

#top-header p {
  margin: 0px;
  padding: 0px;
  line-height: 22px;
}

#top-header [class^="icon-"],
#top-header [class*=" icon-"] {
  border-radius: 50%;
  background-color: #efefef;
  color: #868995 !important;
  display: inline;
  float: left;
  font-size: 10px;
  line-height: 22px;
  margin-right: 10px;
  text-align: center;
  width: 20px;
  padding-left: 2px;
}

/**************************************************************************************/
/*   Header Row		  																  */

#header-row.scroll-to-fixed-fixed {
  background-color: #f7f8f9;
  background-image: url("../images/bg.png");
}

#header-row {
  width: 100%;
  z-index: 100;
}

#header-row {
  opacity: 0;
  transition: opacity 1s ease-in-out 0s;
}

#header-row.visible {
  opacity: 1;
}

#header-row.solid {
  position: relative;
}

#header-row:after {
  bottom: -10px;
  content: "";
  height: 10px;
  left: 0;
  width: 100%;
}

#header-row .moduletable.call-us {
  letter-spacing: 0px;
  margin-top: 45px;
  font-size: 14px;
  text-align: right;
  font-weight: bold;
  text-transform: uppercase;
  float: right;
}

#header-wrapper {
  z-index: 1;
  margin-top: 0;
  opacity: 1;
  padding: 40px 0;
  width: 1200px;
  margin: 0 auto;
}

.scroll-to-fixed-fixed #header-wrapper {
  padding: 10px 0;
}

#header-row .container {
  padding: 0px;
}

#header-row .navigation {
  float: right;
}

#logo {
  position: relative;
}

#logo a {
  display: inline-block;
  margin: 0;
}

.logo a {
  text-align: center;
  line-height: 35px;
}

#logo a img {
  width: 100%;
  transition: all 0.5s;
}

.scroll-to-fixed-fixed #logo a img {
  width: 29%;
  transition: all 0.5s;
}

#header-row .logo {
  line-height: 30px !important;
  position: relative;
  padding: 37px;
  background: none repeat scroll 0 0 #f05a49;
}

#header-row .logo a {
  width: 100%;
  text-align: left;
}

#header-row .logo span.slogan {
  font-size: 12px;
  display: inline-block;
  margin-left: 70px;
}

/**************************************************************************************/
/*   Slider Row		  																  */

#slider-row {
  margin-bottom: 40px;
}

/**************************************************************************************/
/*   Breadcrumb Row		  															  */

#breadcrumbs-row .container {
  border-bottom: 1px dashed #ccc;
  margin-bottom: 30px;
}

#breadcrumbs-row .moduletable-wrapper {
  padding: 10px 20px;
  overflow: hidden;
}

#breadcrumbs-row .moduletable .breadcrumb {
  background-repeat: repeat-x;
  border-radius: 0px;
  position: relative;
  padding: 0px;
  float: right;
}

#breadcrumbs-row .moduletable h2 {
  font-size: 28px;
}

#breadcrumbs-row .moduletable h2 span {
  color: #4a95cc;
}

#breadcrumbs-row ul {
  margin-bottom: 0px;
}

#breadcrumbs-row p {
  padding-bottom: 12px;
}

#breadcrumbs-row a {
  color: #666;
}

#breadcrumbs-row a:hover {
  color: #4a95cc;
}

#breadcrumbs-row a.readmore {
  padding: 7px 25px;
}

/**************************************************************************************/
/*   Featured Row		  															  */

#featured-row {
  position: relative;
}

#featured-row {
  opacity: 0;
  transition: opacity 1s ease-in-out 0s;
}

#featured-row.visible {
  opacity: 1;
}

#featured-row h1,
#featured-row h2 {
  text-align: center;
}

#featured-row a {
  color: #fff;
}

#featured-row a:hover {
  color: #666;
}

#featured-row .moduletable .moduletable-wrapper {
  position: relative;
  margin-bottom: 40px;
}

#featured-row .moduletable.top .moduletable-wrapper {
  padding-bottom: 0px;
}

#featured-row .moduletable .featured-ico {
  top: -40px;
  height: 62px;
  width: 80px;
  left: 10px;
  text-align: center;
  position: absolute;
  background-position: center top;
  background-repeat: no-repeat;
}

#featured-row .mod-newsflash .item,
#featured-row .mod-custom {
  border-radius: 0;
  padding: 30px;
  margin: 0px;
  text-align: left;
  overflow: hidden;
  background: none repeat scroll 0 0 rgba(255, 255, 255, 0.5);
}

#featured-row .mod-custom {
  border-radius: 0;
  padding: 0px 30px 30px;
  margin: 0px;
  text-align: left;
  overflow: hidden;
  background: none;
}

#featured-row .mod-custom .cal-us {
  padding: 5px 150px 20px 0px;
  background-image: url(../images/ico.runner.png);
  background-position: right top;
  background-repeat: no-repeat;
}

#featured-row .mod-custom .cal-us h2 {
  font-size: 34px;
  font-weight: bold;
  line-height: 42px;
  color: #777777;
  padding-top: 35px;
  letter-spacing: -2px;
}

#featured-row .mod-custom .cal-us h3 {
  font-size: 18px;
  padding-bottom: 5px;
  font-weight: bold;
  color: #509bd2;
}

#featured-row .mod-newsflash .item,
#featured-row .mod-newsflash-adv .item,
#featured-row .mod-custom {
  padding: 45px 0 15px;
  color: #fff;
  border-radius: 0;
  text-align: center;
}

#featured-row .mod-newsflash-adv .item_num0 {
  background: none repeat scroll 0 0 #1767A5;
}

#featured-row .mod-newsflash-adv .item_num1 {
  background: none repeat scroll 0 0 #F47D45;
}

#featured-row .mod-newsflash-adv .item_num2 {
  background: none repeat scroll 0 0 #78B82A;
}

#featured-row .mod-newsflash-adv .item .item_content {
  padding: 0 40px 20px;
  overflow: hidden;
}

#featured-row .top h1,
#featured-row .top h2,
#featured-row .top h3,
#featured-row .top a {
  color: #fff;
}

#featured-row .item:hover a {
  color: #333;
  transition: all 0.5s;
}

#featured-row .top .big h1,
#featured-row .top .big h2,
#featured-row .top .big h3 {
  font-size: 100px;
  line-height: 100px;
  font-weight: bold;
  margin-left: -6px;
  text-transform: uppercase;
  font-family: Arial, Helvetica, sans-serif !important;
}

#featured-row h1.big,
#featured-row h2.big,
#featured-row h3.big {
  font-size: 30px;
  line-height: 35px;
  font-weight: bold;
}

#featured-row .mod-custom h1 {
  margin-bottom: 10px;
  padding: 0px;
  color: #3d8ac2;
}

#featured-row .mod-custom h2 {
  margin: 0px;
  padding-top: 0px;
}

#featured-row .module_title,
#featured-row .moduleTitle {
  border-radius: 0px;
  padding: 0px;
  margin: 20px 0px;
  text-align: right;
}

#featured-row .newsflash-title {
  width: 100%;
  float: left;
  text-align: left;
  position: relative;
}

#featured-row .newsflash-title a {
  color: #fff;
}

#featured-row .newsflash-title a:hover {
  color: #4a95cc;
}

#featured-row .mod-newsflash .item ul {
  margin-bottom: 0;
}

#featured-row .mod-newsflash .item ul li {
  line-height: 28px;
}

#featured-row .mod-newsflash .item ul li a {
  font-size: 14px;
  line-height: 30px;
  text-decoration: underline;
}

#featured-row .mod-newsflash .item #system-readmore img {
  text-align: center;
  display: block;
  margin: 0px auto 20px;
}

#featured-row .mod-newsflash .item a.readmore {
  float: none;
  font-size: 11px;
  margin-top: 0px;
  text-transform: uppercase;
}

.body-home-page #featured-row .position-top {
  margin-top: 0px;
}

#featured-row .mod-newsflash .item img,
#featured-row .mod-custom img {
  float: none;
  margin: 0 !important;
  margin-bottom: 0px;
  border-radius: 0;
  filter: none;
  -webkit-filter: grayscale(0);
  max-width: 100%;
}

#featured-row .mod-newsflash .item .img-intro-none {
  border-radius: 0;
}

#featured-row .mod-newsflash .item .img-intro-none img {
  border: 0px solid #8cdfc2 !important;
}

#featured-row .mod-newsflash .item img:hover,
#featured-row .mod-custom img:hover {
  float: none;
  margin: 0 !important;
  margin-bottom: 0px;
  border-radius: 0;
  filter: url(filters.svg#grayscale); /* Firefox */
  filter: gray; /* IE */
  -webkit-filter: grayscale(100%); /* Webkit */
}

#featured-row p {
  float: left;
  padding: 0 0 25px;
}

/**************************************************************************************/
/*   Header Bottom Row		  														  */

#header-bottom-row {
  background-color: #fff;
  margin-bottom: 40px;
  background-repeat: no-repeat;
  background-position: bottom center;
}

#header-bottom-row .header-bottom-row-wrapper {
  padding: 40px 0;
}

#header-bottom-row h1,
#header-bottom-row h2 {
  text-align: center;
  margin-bottom: 25px;
  padding: 0px;
}

#header-bottom-row .mod-newsflash-adv_row .item-content {
  padding: 0 20px;
  overflow: hidden;
}

#header-bottom-row .mod-newsflash-adv .item {
  text-align: center;
}

#header-bottom-row .mod-newsflash-adv .item-content {
  padding: 0 20px;
  overflow: hidden;
}

#header-bottom-row .mod-newsflash-adv .img-intro img {
  background-color: #fff;
  margin-bottom: 10px;
  transition: all 0.5s;
}

#header-bottom-row .mod-newsflash-adv .img-intro img:hover {
  -ms-transform: scale(0.9, 0.9); /* IE 9 */
  -webkit-transform: scale(0.9, 0.9); /* Chrome, Safari, Opera */
  transform: scale(0.9, 0.9);
  transition: all 0.5s;
}

#header-bottom-row a.readmore {
  float: none;
}

#header-bottom-row .item_img,
#header-bottom-row .category_img,
#header-bottom-row .item_fulltext img,
#header-bottom-row .random-image img,
#header-bottom-row img.left,
#header-bottom-row img.right {
  background-image: none;
  border: none;
}

/**************************************************************************************/
/*   Content
/**************************************************************************************/
/**************************************************************************************/

#content-row {
  background: #fff;
  margin-bottom: 40px;
  padding-top: 40px;
}

#content-row .container {
  padding-bottom: 0;
}

#content-row .container .content-inner {
  margin-left: -20px;
}

.page-header {
  border: none;
  padding: 0;
  margin: 0;
}

#component .page-item,
#component .page-featured,
#component .page-blog,
#component .page,
#component .page-category,
#component .com-content-category-blog {
  padding-left: 20px;
}

#component .page-featured .item_img,
#component .page-blog .item_img,
#component .page-category .item_img {
  overflow: hidden;
}

#component .page-featured .item_img img:hover,
#component .page-blog .item_img img:hover,
#component .page-category .item_img img:hover {
  -ms-transform: scale(1.3, 1.3); /* IE 9 */
  -webkit-transform: scale(1.3, 1.3); /* Chrome, Safari, Opera */
  transform: scale(1.3, 1.3);
  transition: all 0.5s;
}

#component .page-featured .item_img img,
#component .page-blog .item_img img,
#component .page-category .item_img img {
  transition: all 0.5s;
}

.page-item,
.page-featured {
  padding-bottom: 50px;
}

.page-item__bottom-border .item_fulltext {
  border-bottom: 5px solid #666;
}

.page-item ul li {
  line-height: 25px;
  list-style-image: url("../images/li.style.png");
  list-style-position: inside;
}

.page-item .row-fluid ul li {
  list-style-position: outside;
}

.page-featured .items-row .item__featured {
  margin-bottom: 35px;
  padding-bottom: 10px;
}

.page-featured .items-leading .item__featured,
.page-category .category_desc p,
.page-blog .category_desc p {
  font-size: 12px;
  line-height: 20px;
  overflow: hidden;
  padding-bottom: 15px;
}

.page-featured .items-leading .item__featured,
.page-featured .items-row:last-child .item__featured {
  margin-bottom: 0px;
  padding-bottom: 0px;
  border-bottom: none;
}

.page-featured .cols-2 .column-1 {
  padding-right: 40px;
  border-right: 1px dashed #ccc;
}

.page-featured .cols-2 .column-2 .item_header h2.item_title {
  text-align: right;
  padding: 10px 0px 35px;
  margin-bottom: 30px;
  background-image: url(../images/border.title.rtl.png);
  background-position: right bottom;
  background-repeat: no-repeat;
}

.page-featured .cols-2 .column-2 {
  padding-left: 20px;
}

.page-featured .cols-2 .column-1 .item_header h2.item_title {
  text-align: left;
  padding: 10px 0px 35px;
  margin-bottom: 30px;
  background-image: url(../images/border.title.ltr.png);
  background-position: left bottom;
  background-repeat: no-repeat;
}

.page-blog .category_desc p,
.page-category .category_desc p,
.page-category .items-row {
  margin-bottom: 40px;
  padding-bottom: 10px;
  border-bottom: 1px solid #d4d4d4;
}

.contentpane .wrapper,
.contentpane.modal .wrapper {
  padding: 30px;
  min-height: 100%;
}

.item_info_dl {
  margin-top: 0;
  margin-bottom: 12px;
}

.item_info_dl dd {
  display: inline-block;
  line-height: 11px;
  padding-right: 12px;
  margin-right: 12px;
  margin-left: 0;
  border-right: 1px solid #b3b3b3;
}

.item_info_dl dd:last-child {
  border: none;
}

.item > .btn-group.pull-right {
  margin-bottom: 12px;
}

/**************************************************************************************/
/*   Form Pages																	  */

.page-contact,
.page-remind,
.page-reset,
#member-registration {
  margin-bottom: 30px;
}

.com-contact,
#member-registration {
  padding: 0 0 30px 20px;
}

/**************************************************************************************/
/*   Blog Pages																		  */

.page-blog p.item_title {
  letter-spacing: 0px;
  font-weight: normal;
  margin-top: 0;
  margin-bottom: 5px;
  text-transform: none;
  font-family: "Open Sans", sans-serif;
  font-size: 18px;
  text-transform: uppercase;
}

.page-blog .btn.btn-info {
  margin: 0px 0px 10px;
  float: right;
}

.page-blog .items-row.cols-1 .btn.btn-info {
  float: left;
}

.page-blog .item {
  overflow: hidden;
  margin-bottom: 25px;
}

.blog .items-leading,
.page-blog .items-leading,
.page-blog .items-row {
  padding-bottom: 15px;
  margin-bottom: 40px;
  padding-bottom: 20px;
  border-bottom: 1px solid #d4d4d4;
}

.page-blog .items-row:last-child {
  border: none;
  margin-bottom: 0px;
}

/* J4 blog page styling */

.blog .page-header h2 {
  line-height: 28px;
  font-size: 18px;
  letter-spacing: 0px;
  margin-top: 0;
  margin-bottom: 15px;
  text-transform: uppercase;
  border: none;
}

.blog-items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  padding: 0;
  margin-bottom: 1em;
}

@media (min-width: 992px) {
  .blog-items.columns-2 > div {
    width: 50%;
  }
  .blog-items.columns-3 > div {
    width: 33.33333%;
  }
  .blog-items.columns-4 > div {
    width: 25%;
  }
}

.blog-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: 0 0.5em 1em;
  overflow: hidden;
}

.boxed .blog-item {
  background-color: hsl(0, 0%, 100%);
  -webkit-box-shadow: 0 0 2px hsla(216, 13%, 23%, 0.1), 0 2px 5px hsla(216, 13%, 23%, 0.08),
    0 5px 15px hsla(216, 13%, 23%, 0.08), inset 0 3px 0 var(--cassiopeia-color-primary);
  box-shadow: 0 0 2px hsla(216, 13%, 23%, 0.1), 0 2px 5px hsla(216, 13%, 23%, 0.08),
    0 5px 15px hsla(216, 13%, 23%, 0.08), inset 0 3px 0 var(--cassiopeia-color-primary);
}

.boxed .blog-item .item-content {
  padding: 25px;
}

.blog-item .item-content .btn .icon-chevron-right {
  display: none;
}

.blog-item .item-image {
  margin-top: 3px;
  margin-bottom: 15px;
  overflow: hidden;
}

.boxed .blog-item .item-image {
  margin-bottom: 0;
}

@media (min-width: 992px) {
  .image-right .blog-item .item-image {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
}

.image-bottom .blog-item .item-image {
  margin-top: -15px;
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}

.image-left .blog-item .item-content {
  padding-left: 25px;
}

.image-right .blog-item .item-content {
  padding-right: 25px;
}

.image-left .blog-item,
.image-right .blog-item {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

@media (min-width: 992px) {
  .image-left .blog-item,
  .image-right .blog-item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
  .image-left .blog-item .item-image,
  .image-right .blog-item .item-image {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 40%;
    flex: 1 0 40%;
  }
  .image-left .blog-item .item-content,
  .image-right .blog-item .item-content {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 60%;
    flex: 1 0 60%;
  }
}

.article-info {
  margin-bottom: 12px;
}

.article-info dt.article-info-term {
  display: none;
}

.article-info dd,
.article-info dt {
  font-weight: normal;
  color: #929292;
  font-size: 11px;
}

.article-info dd {
  padding: 0;
}

@supports (display: grid) {
  .blog-items {
    display: grid;
    margin: 0 0 1em;
    grid-auto-flow: row;
    grid-template-columns: 1fr;
    grid-gap: 1em;
  }
  .blog-items .blog-item {
    padding: 0 0 45px 0;
    border-bottom: 1px solid #fff;
  }
  .blog-items[class^="columns-"] > div,
  .blog-items[class*=" columns-"] > div {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    width: auto;
    max-width: none;
  }
  @media (min-width: 992px) {
    .blog-items.columns-2 {
      grid-template-columns: 1fr 1fr;
    }
    .blog-items.columns-3 {
      grid-template-columns: 1fr 1fr 1fr;
    }
    .blog-items.columns-4 {
      grid-template-columns: 1fr 1fr 1fr 1fr;
    }
  }
}

.blog-items[class*="masonry"] {
  display: block;
  -webkit-column-gap: 1em;
  -moz-column-gap: 1em;
  column-gap: 1em;
}

.blog-items[class*="masonry"] .blog-item {
  margin-bottom: 10px;
  page-break-inside: avoid;
  -webkit-column-break-inside: avoid;
  -moz-column-break-inside: avoid;
  break-inside: avoid;
  display: block;
}

.blog-items.items-leading .blog-item {
  padding-bottom: 0px !important;
  margin-bottom: 0px;
  border-bottom: 0px;
}

.blog-items:not([class*="masonry"]) .blog-item {
  display: inline-block;
  padding: 0 0 20px;
  margin-bottom: 30px;
  border-bottom: 1px solid #ffffff;
}

.blog-items.columns-2 .blog-item:nth-last-child(-n + 2),
.blog-items.columns-3 .blog-item:nth-last-child(-n + 3),
.blog-items.columns-4 .blog-item:nth-last-child(-n + 4),
.blog-items.masonry-2 .blog-item:nth-last-child(-n + 2),
.blog-items.masonry-3 .blog-item:nth-last-child(-n + 3),
.blog-items.masonry-4 .blog-item:nth-last-child(-n + 4) {
  border-bottom: 0px !important;
}

.blog-items:not([class*="masonry"]) .blog-item:last-child {
  display: inline-block;
  padding-bottom: 35px;
  margin-bottom: 0px;
  border-bottom: 0px;
}

@media (min-width: 992px) {
  .blog-items.masonry-2 {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
  }
  .blog-items.masonry-3 {
    -webkit-column-count: 3;
    -moz-column-count: 3;
    column-count: 3;
  }
  .blog-items.masonry-4 {
    -webkit-column-count: 4;
    -moz-column-count: 4;
    column-count: 4;
  }
}

.image-alternate .blog-item:nth-of-type(2n + 1) .item-image {
  -webkit-box-ordinal-group: 1;
  -ms-flex-order: 0;
  order: 0;
}

.image-alternate.image-left .blog-item:nth-of-type(2n + 1) .item-image {
  margin-right: 0;
  margin-left: 25px;
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}

.image-alternate.image-top .blog-item:nth-of-type(2n + 1) .item-image {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}

/**************************************************************************************/
/*   Category Pages																	  */

.page-category__testimonials blockquote {
  overflow: hidden;
  border-left: 5px solid #dddddd;
}

.page-category__testimonials .img-intro__left {
  margin: 0px 15px 10px 0px;
}

.page-category__team .item_introtext {
  overflow: hidden;
}

.page-category [class*="cols-"] h2.item_title {
  border: none;
  padding-bottom: 0;
}

.page-category .btn.btn_info {
  margin: 10px 0px 5px;
  float: right;
}

.page-category .items-row:last-child {
  border: none;
  margin-bottom: 0px;
}

.page-category .item {
  overflow: hidden;
  margin-bottom: 25px;
  padding-right: 10px;
}

/**************************************************************************************/
/*   Archive Page																	  */

.page-archive .alert-info {
  background-color: #eeeeee;
  border: 1px solid #eeeeee;
}

#page-archive_items .item_title {
  padding-bottom: 0;
}

.page-archive_filters .filter-search.alert {
  padding-bottom: 0;
  overflow: hidden;
}

.page-archive_filters select {
  margin-bottom: 8px;
  display: inline-block;
}

.page-archive_filters button {
  display: inline-block;
  margin-bottom: 8px;
}

.filter-search.alert {
  padding: 8px 21px;
}

/**************************************************************************************/
/*   Page 404																		  */

.errorBox {
  background: none;
  text-align: left;
}

/**************************************************************************************/
/*   Contacts Page																	  */

#jform_contact_message {
  resize: none;
  width: 100%;
  height: 149px;
}

#contact-form label {
  display: inline-block;
  margin-bottom: 4px;
}

.phone-num {
  display: inline-block;
}

.icons-marker {
  font-size: 14px;
  line-height: 20px;
}

.contact_email-copy,
.contact_vcard {
  margin: 0px 15px;
  height: 30px;
  line-height: 22px;
  display: inline-block;
}

.contact_vcard {
  margin: 0;
}

#jform_contact_name,
#jform_contact_email,
#jform_contact_emailmsg {
  width: 100%;
  margin-bottom: 10px;
}

#contact-form p {
  text-align: right;
  margin: 3px 0px 0px;
}

#contact-form .controls button,
.contact_email-copy {
  margin-top: 10px;
}

.contact_details .icons-marker {
  display: block;
  width: 16px;
  margin-right: 12px;
  float: left;
}

.contact_details {
  padding: 30px 0px 10px;
}

.contact_address {
  overflow: hidden;
}

.map {
  margin-bottom: 20px;
  border: 1px solid #cbcbcb;
}

#contact_map > div {
  height: 100%;
}

#phocaMapPlgPM1 {
  height: 356px;
  width: 100% !important;
  padding: 0px;
  margin: 0px;
}

/**************************************************************************************/
/*   Sidebars
/**************************************************************************************/
/**************************************************************************************/

aside .moduletable {
  margin-bottom: 35px;
  overflow: hidden;
}

#aside-row-1-left,
#aside-row-2-left {
  margin-right: 30px;
}

#aside-row-1-right,
#aside-row-2-right {
  margin-left: 30px;
}

#aside-row-2-right .moduletable-wrapper {
  overflow: hidden;
}

#aside-row-2-right h2,
#aside-row-2-right h3 {
  border-radius: 0px;
  text-transform: uppercase;
  margin-bottom: 25px;
  font-weight: normal;
}

#aside-row-2-left h2,
#aside-row-2-left .module_title,
#aside-row-2-left .moduleTitle,
#aside-row-2-right h2,
#aside-row-2-right .module_title,
#aside-row-2-right .moduleTitle {
  border: none;
  background: #1767A5;
  color: #fff;
  padding: 8px 10px 7px 20px;
  margin-bottom: 27px;
}

#aside-row-2-right h3 {
  line-height: 22px;
}

aside .mod-newsflash .item,
aside .mod-newsflash-adv .item {
  margin-bottom: 40px;
}

aside .mod-newsflash .item:last-child,
aside .mod-newsflash-adv .item:last-child {
  border: none;
  margin-bottom: 0;
  padding-bottom: 0;
}

aside .mod-newsflash .item p,
aside .mod-newsflash-adv .item p {
  padding-bottom: 10px;
}

.mod-newsflash__history .item_published {
  text-transform: none;
  font-size: 14px;
  display: inline-block;
  padding-top: 2px;
}

.mod-newsflash h2 {
  float: left;
  overflow: hidden;
  margin: 0px 25px 10px 0px;
  padding: 0px;
}

.mod-newsflash h3 {
  line-height: 24px;
}

aside.mod-newsflash-adv .item_published {
  float: left;
  padding: 7px 20px;
  margin: 5px 30px 20px 0px;
  background: none repeat scroll 0 0 #509bd2;
  border-radius: 5px;
  color: #fff;
  text-transform: uppercase;
}

aside .img-intro__left {
  max-width: 40%;
}

aside .search form {
  border: 1px solid #d4d4d4;
  padding: 5px 5px 5px 10px;
}

aside .search button {
  margin-top: -1px;
  padding: 4px 10px 4px;
}

aside .search #mod-search-searchword {
  width: 60%;
  border: none;
  background: none;
}

aside .mod-login input {
  margin-bottom: 10px;
}

.mod-login__aside .mod-login_username,
.mod-login__aside .mod-login_passwd {
  width: 100%;
}

.mod-login_submit {
  margin: 15px 0px 15px;
}

aside .mod-login input.mod-login_username,
aside .mod-login input.mod-login_passwd,
#aside-row-2-left .acymailing_form .acyfield_name input,
#aside-row-2-left .acymailing_form .acyfield_email input {
  width: 100%;
}

#aside-row-2-left .btn.btn_info.readmore,
#aside-row-2-right .btn.btn_info.readmore {
  float: right;
  margin-top: 10px;
}

#aside-right .moduletable ul.nav li,
#aside-left .moduletable ul.nav li {
  list-style: none;
  list-style-image: none;
  padding: 0 0 9px 25px;
  font-size: 14px;
  font-weight: 200;
  line-height: 18px;
  margin-bottom: 0px;
  letter-spacing: 0px;
}

aside .moduletable ul.nav ul {
  margin-top: 15px;
}

aside .moduletable ul.nav ul li:last-child {
  padding-bottom: 0px;
}

#aside-row-2-left table.acymailing_form {
  width: 100%;
  margin: 0;
}

#aside-row-2-left .acymailing_module_form span.acymailing_finaltext {
  margin-top: 10px;
}

/**************************************************************************************/
/*   Content Row 3		  															  */

#content-row-3 .moduletable {
  margin: 40px 0px 20px;
  padding: 0px 0px;
  border-top: 0px dashed #cccccc;
}

#content-row-3 .item_introtext p {
  padding-bottom: 10px;
}

#content-row-3 .btn {
  float: left;
}

#content-row-3 h4.item_title {
  text-align: right;
}

#content-row-3 .random-image img {
  max-width: 100%;
}

/**************************************************************************************/
/*   Content Row 4		  															  */

#content-row-4 {
  margin-bottom: 40px;
  background: #fff;
  padding: 40px 0;
}

#content-row-4 .moduletable-wrapper {
  padding: 0;
}

#content-row-4 .module_title,
#content-row-4 .moduleTitle {
  color: #f3594c;
  border-bottom: 5px solid #008dc0;
  margin-bottom: 50px;
}

#content-row-4 .container .random-image img {
  max-width: 100%;
  margin-bottom: 0;
  padding: 0;
  border: none;
}

#content-row-4 .mod-newsflash .item ul {
  margin-bottom: 0;
}

#content-row-4 .mod-newsflash .item ul li {
  line-height: 28px;
}

#content-row-4 .mod-newsflash .item ul li a {
  font-size: 14px;
  line-height: 30px;
  text-decoration: underline;
}

#content-row-4 .mod-newsflash .item #system-readmore img {
  text-align: center;
  display: block;
  margin: 0px auto 20px;
}

#content-row-4 .mod-newsflash .item a.readmore {
  margin-top: 10px;
}

#content-row-4 .moduletable .mod-custom__no-border {
  border: none;
  padding: 0;
}

#content-row-4 .mod-newsflash-adv .item img {
  transition: all 0.5s;
}

#content-row-4 .mod-newsflash-adv .item img:hover {
  -ms-transform: scale(0.9, 0.9); /* IE 9 */
  -webkit-transform: scale(0.9, 0.9); /* Chrome, Safari, Opera */
  transform: scale(0.9, 0.9);
  transition: all 0.5s;
}

/**************************************************************************************/
/*   Content Row 5		  															  */

#content-row-5 {
  text-align: center;
  margin-bottom: 40px;
}

#content-row-5 .content-row-5-wrapper {
  padding: 40px 0px;
  background-color: #fff;
}

#content-row-5 .moduletable {
  overflow: hidden;
  color: #fff;
}

#content-row-5 .moduletable-wrapper {
  padding: 0;
}

#content-row-5 .moduletable.transparent {
  color: #fff;
  background-color: transparent;
  opacity: 1;
}

#content-row-5 .moduletable.transparent .moduletable-wrapper {
  border: none;
}

#content-row-5 .module_title,
#content-row-5 .moduleTitle {
  margin-bottom: 0px;
}

#content-row-5 .btn,
#content-row-5 a.readmore {
  float: none;
}

/**************************************************************************************/
/*   Content Row 6		  															  */

#content-row-6 {
  text-align: center;
  margin-bottom: 40px;
  background: #fff;
  padding: 40px 0;
}

#content-row-6 h1,
#content-row-6 h2 {
  color: #4a95cc;
  padding-bottom: 20px;
}

.content-row-separator {
  border-top: 5px solid #008dc0;
  padding-bottom: 40px;
}

#content-row-6 .mod-newsflash-adv .item img {
  border: none;
}

#content-row-6 .mod-newsflash-adv .row-fluid {
  margin-bottom: 30px;
  padding-bottom: 30px;
  border-bottom: 1px dotted #ccc;
}

#content-row-6 .mod-newsflash-adv .row-fluid.lastRow {
  margin-bottom: 0px;
  padding-bottom: 0px;
  border-bottom: 0px dotted #ccc;
}

#content-row-6 .mod-newsflash-adv .item_title,
#content-row-6 .mod-newsflash-adv .item_title a {
  color: #f3594c;
}

#content-row-6 .mod-newsflash-adv .item_title a:hover {
  color: #509bd2;
}

/**************************************************************************************/
/*   Footer
/**************************************************************************************/
/**************************************************************************************/

#footer {
  margin-top: 0px;
  color: #fff;
}

#footer-row {
  line-height: 17px;
  background: #173B55;
  padding: 40px 0;
  width: 1200px;
  margin: 0 auto 40px;
}

#footer-row h1,
#footer-row h2,
#footer-row h3 {
  color: #ffffff;
}

#footer-row h2.module_title,
#footer-row h2.moduleTitle {
  padding-bottom: 20px;
}

#footer-row .moduletable.social .nav {
  margin-top: 0px;
}

#footer-row h2.footer-phoca {
  margin: 0 0 5px 0;
}

#footer-row h3 {
  padding-bottom: 20px;
  margin: 0px 0px 10px 0px;
}

#footer-row a:hover {
  background-color: transparent;
  color: #4a95cc;
}

#footer-row .mod-newsflash .item {
  margin-bottom: 8px;
}

#footer-row .footer-row-1 {
  overflow: hidden;
}

#footer-row .footer-row-2 {
  overflow: hidden;
  clear: both;
  margin-bottom: 0px;
}

#footer-row .footer-row-2 .span12 {
  padding-bottom: 30px;
}

#footer-row .footer-row-separator {
  clear: both;
  margin: 25px 0px 40px;
  border-top: 1px dashed #999;
}

#footer-row ul li {
  list-style-position: inside;
  line-height: 22px;
}

[class^="icon-"],
[class*=" icon-"] {
  height: auto;
}

#footer-row ul li a {
  text-transform: capitalize;
  color: #fff;
}

#footer-row ul.workinghours {
  padding: 0px;
}

#footer-row ul.workinghours li .weekday {
  width: 85px;
  display: inline-block;
}

#footer-row ul.nav li a {
  display: inline;
}

#copyright-row {
  background-image: none;
  background-color: #666;
  border-top: 1px solid #555;
  color: #fff;
  background-repeat: no-repeat;
  background-position: top center;
  padding: 20px 0;
  overflow: hidden;
}

#trademark {
  float: left;
  text-transform: uppercase;
}

#copyright-menu {
  float: right;
}

#copyright-menu li {
  display: inline-block;
  line-height: 11px;
  padding-right: 12px;
  margin-right: 12px;
  background: none;
}

#copyright-menu li {
  border-right: 1px solid #fff;
}

#copyright-menu li a {
  color: #fff;
}

#copyright-menu .nav,
#copyright-menu li.lastItem {
  padding: 0;
  margin: 0;
  border: none;
}

#copyright-menu li a {
  text-transform: uppercase;
  line-height: 11px;
  background: none !important;
}

#copyright-menu li a:hover,
#copyright-menu li.current a,
#copyright-menu li.active a {
  color: #4a95cc;
}

#copyright-menu li ul {
  display: none;
}

.spacer_w {
  height: 1px;
  color: transparent;
}

#footer-row .contactus ul li {
  width: 100%;
}

/***************************************************************************
/*
/*   Gallery 
/*
/**************************************************************************/

#phocagallery-module-ri div.mosaic a img:hover {
  -ms-transform: scale(1.2, 1.2); /* IE 9 */
  -webkit-transform: scale(1.2, 1.2); /* Chrome, Safari, Opera */
  transform: scale(1.2, 1.2);
  transition: all 0.5s;
}

#phocagallery-module-ri div.mosaic a img {
  transition: all 0.5s;
}

#phocagallery-module-ri .mosaic {
  margin-right: 10px;
  margin-bottom: 8px;
}

#phocagallery-module-ri .mosaic:last-child {
  margin-right: 0px;
}

#phocagallery-module-ri div.mosaic img {
  box-shadow: none !important;
  border: none !important;
}

#sbox-window {
  height: auto !important;
}

#sbox-overlay {
  width: 100% !important;
}

.boxplusx-caption {
  display: none;
}

.slideplus-content a.sigplus-image img.sigplus-preview {
  width: 100%;
  -moz-transition: width 0.5s ease;
  -webkit-transition: width 0.5s ease;
  transition: width 0.5s ease;
}

.slideplus-content a.sigplus-image:hover img.sigplus-preview {
  width: 97%;
  -moz-transition: width 0.5s ease;
  -webkit-transition: width 0.5s ease;
  transition: width 0.5s ease;
}
/* ===== Paleta institucional ===== */

/* Menú principal: activo y hover en azul institucional */
li.active span.image-title,
li.current span.image-title,
a:hover span.image-title,
a:focus span.image-title {
  color: #1767A5 !important;
}

/* Fondo general de la página */
html,
body {
  background-color: #F5F7F5 !important;
}
/* Iconos "Conocer más": circulo azul profundo con palomita blanca */
a.readmore,
a.btn.btn-info.readmore,
.mod-newsflash a.readmore {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='8' fill='%23173B55'/%3E%3Cpath d='M4.5 8.3l2.4 2.4 4.6-4.9' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: left top !important;
  background-size: 16px 16px !important;
}

a.readmore:hover,
a.readmore:focus,
a.btn.btn-info.readmore:hover,
a.btn.btn-info.readmore:focus {
  background-position: left top !important;
}
/* Tarjetas de servicios: verde, azul, naranja */
article.span4.item.item_num0.item__module {
  background-color: #78B82A !important;
}
article.span4.item.item_num1.item__module {
  background-color: #1767A5 !important;
}
article.span4.item.item_num2.item__module {
  background-color: #F47D45 !important;
}
/* Caja "Una visión integral": mismo ancho que las tarjetas */
.moduletable-wrapper:has(.vision-ambiente) {
  overflow: visible !important;
}
.container:has(.vision-ambiente) {
  border-bottom: 0 !important;
}
.vision-ambiente {
  margin-left: -54px;
  margin-right: -54px;
}
@media (max-width: 1199px) {
  .vision-ambiente {
    margin-left: 0;
    margin-right: 0;
  }
}
@media (max-width: 767px) {
  .servicios-grid { grid-template-columns: 1fr !important; }
}
/* Tarjetas de servicios: alineadas con la plantilla */
.servicios-grid a.servicio-card {
  background: #fff !important;
  border: 0 !important;
  border-left: 5px solid #78B82A !important;
  border-radius: 6px !important;
  box-shadow: 0 4px 18px rgba(23, 59, 85, .08) !important;
  padding: 26px 28px !important;
  transition: transform .25s, box-shadow .25s;
}
.servicios-grid a.servicio-card:nth-child(3n+2) { border-left-color: #1767A5 !important; }
.servicios-grid a.servicio-card:nth-child(3n+3) { border-left-color: #F47D45 !important; }

.servicios-grid a.servicio-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 26px rgba(23, 59, 85, .16) !important;
}

.servicio-card img,
.servicio-card svg {
  background: #F5F7F5;
  border-radius: 50%;
  padding: 14px;
  box-sizing: content-box;
}
.servicio-card h3,
.servicio-card h4 { color: #173B55; }
/* ===== Proyectos y experiencia ===== */
.proyectos-modulo { padding: 10px 54px 30px; }
@media (max-width: 1199px) { .proyectos-modulo { padding: 10px 15px 30px; } }

.proyectos-head { text-align: center; margin-bottom: 28px; }
.proyectos-head h2 {
  color: #173B55; font-size: 30px; font-weight: bold;
  line-height: 1.2; margin: 0 0 6px; text-transform: none;
}
.proyectos-head h2::after {            /* subrayado de acento */
  content: ""; display: block; width: 56px; height: 4px;
  margin: 12px auto 0; border-radius: 2px; background: #78B82A;
}
.proyectos-head p { color: #3a4a55; font-size: 16px; margin: 10px 0 0; }

.proyectos-grid {
  display: grid; gap: 24px;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

.proyecto-card {
  position: relative; overflow: hidden; background: #fff;
  border-radius: 6px; border-top: 5px solid #78B82A;
  box-shadow: 0 4px 18px rgba(23, 59, 85, .08);
  transition: transform .25s, box-shadow .25s;
}
.proyecto-card:nth-child(3n+2) { border-top-color: #1767A5; }
.proyecto-card:nth-child(3n+3) { border-top-color: #F47D45; }
.proyecto-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 26px rgba(23, 59, 85, .16);
}

.proyecto-media { position: relative; overflow: hidden; }
.proyecto-media img {
  display: block; width: 100%; aspect-ratio: 2 / 1;
  object-fit: cover; object-position: center center;
  border-radius: 0; transition: transform .4s;
}
.proyecto-card:nth-child(n+2) .proyecto-media img { object-position: center top; }
.proyecto-card:hover .proyecto-media img { transform: scale(1.05); }

.proyecto-lugar {
  position: absolute; left: 0; bottom: 0;
  background: #173B55; color: #fff;
  font-size: 13px; padding: 6px 14px;
  border-radius: 0 6px 0 0;
}

.proyecto-body { padding: 20px 22px 24px; }
.proyecto-titulo {
  color: #173B55; font-size: 18px; font-weight: bold;
  line-height: 1.3; margin: 0 0 10px; text-transform: none;
}
.proyecto-servicio { color: #3a4a55; font-size: 14px; line-height: 1.5; margin: 0 0 16px; }
.proyecto-servicio strong { color: #78B82A; }

.proyecto-enlace {
  color: #1767A5; font-size: 14px; font-weight: bold; text-decoration: none;
}
.proyecto-enlace span { display: inline-block; transition: transform .25s; }
.proyecto-card:hover .proyecto-enlace span { transform: translateX(5px); }
.proyecto-enlace::after { content: ""; position: absolute; inset: 0; } /* toda la tarjeta es clicable */
/* ===== Metodología de trabajo ===== */
.metodologia-modulo {
  background: #F5F7F5;
  border-radius: 8px;
  padding: 44px 40px 48px;
  margin: 10px 54px 30px;
}
@media (max-width: 1199px) { .metodologia-modulo { margin: 10px 15px 30px; padding: 36px 20px 40px; } }

.metodologia-head { text-align: center; margin-bottom: 34px; }
.metodologia-head h2 {
  color: #173B55; font-size: 30px; font-weight: bold;
  line-height: 1.2; margin: 0; text-transform: none;
}
.metodologia-head h2::after {
  content: ""; display: block; width: 56px; height: 4px;
  margin: 12px auto 0; border-radius: 2px; background: #78B82A;
}
.metodologia-head p { color: #3a4a55; font-size: 16px; margin: 10px 0 0; }

/* ---- cuadrícula: 5 en una fila ---- */
.metodologia-pasos {
  list-style: none !important; margin: 0; padding: 0;
  display: grid; gap: 24px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.metodologia-pasos .paso {
  --c: #78B82A;
  list-style: none !important;
  position: relative; box-sizing: border-box;
  margin: 0; padding: 26px 16px 24px;
  background: #fff;
  border-top: 5px solid var(--c);
  border-radius: 6px;
  box-shadow: 0 4px 18px rgba(23, 59, 85, .08);
  text-align: center;
  transition: transform .25s, box-shadow .25s;
}
.metodologia-pasos .paso::before { content: none !important; }   /* quita las viñetas rojas */
.metodologia-pasos .paso:nth-child(2) { --c: #1767A5; }
.metodologia-pasos .paso:nth-child(3) { --c: #F47D45; }
.metodologia-pasos .paso:nth-child(4) { --c: #78B82A; }
.metodologia-pasos .paso:nth-child(5) { --c: #1767A5; }
.metodologia-pasos .paso:hover { transform: translateY(-4px); box-shadow: 0 10px 26px rgba(23, 59, 85, .16); }

.paso-num {
  position: absolute; top: 10px; right: 14px;
  font-size: 30px; font-weight: bold; line-height: 1;
  color: rgba(23, 59, 85, .10);
}

/* ---- círculo del icono ---- */
.paso-icono {
  position: relative;
  width: 64px; height: 64px; margin: 0 auto 16px;
  border-radius: 50%; background: #F5F7F5;
  transition: background .25s;
}
.paso-icono svg { display: none; }
.paso-icono::before {
  content: ""; position: absolute; top: 50%; left: 50%;
  width: 32px; height: 32px; margin: -16px 0 0 -16px;
  background-color: var(--c);
  -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat;
  -webkit-mask-position: center; mask-position: center;
  -webkit-mask-size: contain; mask-size: contain;
  transition: background-color .25s;
}
.metodologia-pasos .paso:hover .paso-icono { background: #173B55; }
.metodologia-pasos .paso:hover .paso-icono::before { background-color: #fff; }

/* 1 Diagnóstico: portapapeles */
.paso:nth-child(1) .paso-icono::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='4' width='14' height='17' rx='2'/%3E%3Cpath d='M9 4h6v3H9z'/%3E%3Cpath d='M8.5 12h.01M11 12h5M8.5 16h.01M11 16h5'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='4' width='14' height='17' rx='2'/%3E%3Cpath d='M9 4h6v3H9z'/%3E%3Cpath d='M8.5 12h.01M11 12h5M8.5 16h.01M11 16h5'/%3E%3C/svg%3E");
}
/* 2 Planificación: lupa */
.paso:nth-child(2) .paso-icono::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M16.5 16.5L21 21'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M16.5 16.5L21 21'/%3E%3C/svg%3E");
}
/* 3 Evaluación: microscopio */
.paso:nth-child(3) .paso-icono::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 18h8'/%3E%3Cpath d='M3 22h18'/%3E%3Cpath d='M14 22a7 7 0 1 0 0-14h-1'/%3E%3Cpath d='M9 14h2'/%3E%3Cpath d='M9 12a2 2 0 0 1-2-2V6h6v4a2 2 0 0 1-2 2Z'/%3E%3Cpath d='M12 6V3a1 1 0 0 0-1-1H9a1 1 0 0 0-1 1v3'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 18h8'/%3E%3Cpath d='M3 22h18'/%3E%3Cpath d='M14 22a7 7 0 1 0 0-14h-1'/%3E%3Cpath d='M9 14h2'/%3E%3Cpath d='M9 12a2 2 0 0 1-2-2V6h6v4a2 2 0 0 1-2 2Z'/%3E%3Cpath d='M12 6V3a1 1 0 0 0-1-1H9a1 1 0 0 0-1 1v3'/%3E%3C/svg%3E");
}
/* 4 Soluciones: documento con visto bueno */
.paso:nth-child(4) .paso-icono::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 2v6h6'/%3E%3Cpath d='m9 15 2 2 4-4'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 2v6h6'/%3E%3Cpath d='m9 15 2 2 4-4'/%3E%3C/svg%3E");
}
/* 5 Entrega: apretón de manos */
.paso:nth-child(5) .paso-icono::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m11 17 2 2a1 1 0 1 0 3-3'/%3E%3Cpath d='m14 14 2.5 2.5a1 1 0 1 0 3-3l-3.88-3.88a3 3 0 0 0-4.24 0l-.88.88a1 1 0 1 1-3-3l2.81-2.81a5.79 5.79 0 0 1 7.06-.87l.47.28a2 2 0 0 0 1.42.25L21 4'/%3E%3Cpath d='m21 3 1 11h-2'/%3E%3Cpath d='M3 3 2 14l6.5 6.5a1 1 0 1 0 3-3'/%3E%3Cpath d='M3 4h8'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m11 17 2 2a1 1 0 1 0 3-3'/%3E%3Cpath d='m14 14 2.5 2.5a1 1 0 1 0 3-3l-3.88-3.88a3 3 0 0 0-4.24 0l-.88.88a1 1 0 1 1-3-3l2.81-2.81a5.79 5.79 0 0 1 7.06-.87l.47.28a2 2 0 0 0 1.42.25L21 4'/%3E%3Cpath d='m21 3 1 11h-2'/%3E%3Cpath d='M3 3 2 14l6.5 6.5a1 1 0 1 0 3-3'/%3E%3Cpath d='M3 4h8'/%3E%3C/svg%3E");
}

.metodologia-pasos .paso h3 {
  color: #173B55; font-size: 18px; font-weight: bold;
  line-height: 1.3; margin: 0 0 8px; text-transform: none;
}
.metodologia-pasos .paso p { color: #3a4a55; font-size: 14px; line-height: 1.5; margin: 0; }

/* conector entre pasos (solo escritorio) */
.metodologia-pasos .paso:not(:last-child)::after {
  content: "›"; position: absolute; top: 50%; right: -24px;
  width: 24px; height: 24px; margin-top: -12px;
  border-radius: 50%; background: #173B55; color: #fff;
  font-size: 18px; line-height: 22px; text-align: center; z-index: 1;
}

/* tableta: 3 arriba + 2 abajo, llenando toda la fila */
@media (max-width: 1199px) {
  .metodologia-pasos { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .metodologia-pasos .paso { grid-column: span 2; }
  .metodologia-pasos .paso:nth-child(n+4) { grid-column: span 3; }
  .metodologia-pasos .paso:not(:last-child)::after { display: none; }
}
/* móvil: una columna */
@media (max-width: 767px) {
  .metodologia-pasos { grid-template-columns: 1fr; }
  .metodologia-pasos .paso,
  .metodologia-pasos .paso:nth-child(n+4) { grid-column: auto; }
}
/* ===== Conocimiento ambiental ===== */
.conocimiento-modulo { padding: 10px 54px 40px; }
@media (max-width: 1199px) { .conocimiento-modulo { padding: 10px 15px 40px; } }

.conocimiento-head { text-align: center; margin-bottom: 28px; }
.conocimiento-head h2 {
  color: #173B55; font-size: 30px; font-weight: bold;
  line-height: 1.2; margin: 0; text-transform: none;
}
.conocimiento-head h2::after {
  content: ""; display: block; width: 56px; height: 4px;
  margin: 12px auto 0; border-radius: 2px; background: #78B82A;
}
.conocimiento-head p { color: #3a4a55; font-size: 16px; margin: 10px 0 0; }

/* 4 tarjetas seguidas en una fila */
.conocimiento-modulo .conocimiento-grid {
  display: grid; gap: 22px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.conocimiento-modulo .conocimiento-grid .conocimiento-card {
  --c: #78B82A;
  grid-column: auto;
  display: flex; flex-direction: column;
  position: relative; overflow: hidden; background: #fff;
  border-top: 5px solid var(--c); border-radius: 6px;
  box-shadow: 0 4px 18px rgba(23, 59, 85, .08);
  transition: transform .25s, box-shadow .25s;
}
.conocimiento-modulo .conocimiento-card:nth-child(2) { --c: #1767A5; }
.conocimiento-modulo .conocimiento-card:nth-child(3) { --c: #F47D45; }
.conocimiento-modulo .conocimiento-card:nth-child(4) { --c: #78B82A; }
.conocimiento-modulo .conocimiento-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 26px rgba(23, 59, 85, .16);
}

.conocimiento-modulo .conocimiento-grid .conocimiento-card .conocimiento-media {
  position: relative; overflow: hidden; flex: none;
}
.conocimiento-modulo .conocimiento-grid .conocimiento-card .conocimiento-media img {
  display: block; width: 100%; height: auto; min-height: 0;
  aspect-ratio: 3 / 2; object-fit: cover; border-radius: 0;
  transition: transform .4s;
}
.conocimiento-modulo .conocimiento-card:hover .conocimiento-media img { transform: scale(1.05); }

.conocimiento-etiqueta {
  position: absolute; left: 0; bottom: 0;
  background: var(--c); color: #fff;
  font-size: 13px; font-weight: bold; padding: 6px 14px;
  border-radius: 0 6px 0 0;
}

.conocimiento-modulo .conocimiento-grid .conocimiento-card .conocimiento-body {
  flex: 1; display: flex; flex-direction: column;
  justify-content: flex-start; padding: 18px 18px 22px;
}
.conocimiento-titulo {
  color: #173B55; font-size: 17px; font-weight: bold;
  line-height: 1.3; margin: 0 0 10px; text-transform: none;
}
.conocimiento-desc { color: #3a4a55; font-size: 14px; line-height: 1.5; margin: 0 0 16px; }

.conocimiento-enlace {
  margin-top: auto; color: #1767A5; font-size: 14px;
  font-weight: bold; text-decoration: none;
}
.conocimiento-enlace span { display: inline-block; transition: transform .25s; }
.conocimiento-card:hover .conocimiento-enlace span { transform: translateX(5px); }
.conocimiento-enlace::after { content: ""; position: absolute; inset: 0; }

/* "Ver más": enlace de texto */
.conocimiento-modulo .conocimiento-vermas { text-align: center; margin-top: 34px; }
.conocimiento-modulo .conocimiento-vermas a {
  display: inline-block; padding: 0 0 4px; margin: 0;
  background: none; box-shadow: none; border-radius: 0;
  border: 0; border-bottom: 2px solid #78B82A;
  color: #1767A5; font-size: 22px; font-weight: bold; line-height: 1.3;
  text-decoration: none;
  transition: color .25s, border-color .25s;
}
.conocimiento-modulo .conocimiento-vermas a span {
  display: inline-block; margin-left: 6px; color: #78B82A;
  transition: transform .25s;
}
.conocimiento-modulo .conocimiento-vermas a:hover {
  background: none; transform: none;
  color: #173B55; border-bottom-color: #F47D45;
}
.conocimiento-modulo .conocimiento-vermas a:hover span { transform: translateX(6px); color: #F47D45; }

/* tableta: 2 columnas */
@media (max-width: 1199px) {
  .conocimiento-modulo .conocimiento-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .conocimiento-modulo .conocimiento-grid .conocimiento-card { grid-column: auto; }
}
/* móvil: 1 columna */
@media (max-width: 767px) {
  .conocimiento-modulo .conocimiento-grid { grid-template-columns: 1fr; }
  .conocimiento-modulo .conocimiento-vermas a { font-size: 17px; padding: 16px 22px; }
}
/* ===== Conocimiento ambiental: 5 tarjetas seguidas ===== */
.conocimiento-modulo .conocimiento-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 16px;
}
.conocimiento-modulo .conocimiento-card:nth-child(5) { --c: #1767A5; }

.conocimiento-modulo .conocimiento-grid .conocimiento-card .conocimiento-media img { aspect-ratio: 4 / 3; }
.conocimiento-modulo .conocimiento-grid .conocimiento-card .conocimiento-body { padding: 16px 14px 20px; }
.conocimiento-titulo { font-size: 15px; line-height: 1.3; }
.conocimiento-desc { font-size: 13px; line-height: 1.5; }
.conocimiento-etiqueta { font-size: 12px; padding: 5px 10px; }

/* tableta: 3 arriba y 2 abajo, llenando la fila */
@media (max-width: 1199px) {
  .conocimiento-modulo .conocimiento-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 20px; }
  .conocimiento-modulo .conocimiento-grid .conocimiento-card { grid-column: span 2; }
  .conocimiento-modulo .conocimiento-grid .conocimiento-card:nth-child(n+4) { grid-column: span 3; }
}
/* móvil: una columna */
@media (max-width: 767px) {
  .conocimiento-modulo .conocimiento-grid { grid-template-columns: 1fr; }
  .conocimiento-modulo .conocimiento-grid .conocimiento-card,
  .conocimiento-modulo .conocimiento-grid .conocimiento-card:nth-child(n+4) { grid-column: auto; }
}
/* ===== Pie: Contacto | Servicios | Cotización | Formulario ===== */
.cotiza-modulo {
  display: grid; align-items: start; gap: 28px;
  grid-template-columns: 1.1fr .9fr 1.1fr 1.4fr;
  background: #173B55; border-radius: 0;
  padding: 34px 35px 24px; margin: 0;
}

/* títulos de columna, como los de la plantilla */
.cotiza-modulo .cotiza-col-titulo {
  color: #fff !important; font-size: 24px; font-weight: 300;
  text-transform: uppercase; line-height: 1.2; margin: 0 0 18px;
}

/* listas */
.cotiza-modulo .cotiza-lista { list-style: none !important; margin: 0; padding: 0; }
.cotiza-modulo .cotiza-lista li {
  position: relative; list-style: none !important;
  margin: 0 0 10px; padding-left: 24px;
  color: #fff; font-size: 13px; line-height: 1.5; word-break: break-word;
}
.cotiza-modulo .cotiza-lista li::before {
  content: ""; position: absolute; left: 0; top: 3px;
  width: 15px; height: 15px; background-color: #78B82A;
  -webkit-mask: var(--i) center / contain no-repeat;
  mask: var(--i) center / contain no-repeat;
}
.cotiza-modulo .cotiza-lista a { color: #fff; text-decoration: none; }
.cotiza-modulo .cotiza-lista a:hover { color: #F5BD4A; }

.cotiza-modulo .i-home { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11l9-8 9 8'/%3E%3Cpath d='M5 10v11h14V10'/%3E%3C/svg%3E"); }
.cotiza-modulo .i-tel  { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E"); }
.cotiza-modulo .i-chat { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7.9 20A9 9 0 1 0 4 16.1L2 22z'/%3E%3C/svg%3E"); }
.cotiza-modulo .i-mail { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='20' height='16' x='2' y='4' rx='2'/%3E%3Cpath d='m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7'/%3E%3C/svg%3E"); }

/* servicios: flecha en vez de icono */
.cotiza-modulo .cotiza-servicios li { padding-left: 16px; }
.cotiza-modulo .cotiza-servicios li::before {
  top: 6px; width: 0; height: 0; background: none;
  -webkit-mask: none; mask: none;
  border-left: 6px solid #78B82A;
  border-top: 4px solid transparent; border-bottom: 4px solid transparent;
}

/* texto + botón */
.cotiza-modulo .cotiza-texto h2 {
  color: #fff; font-size: 22px; font-weight: bold;
  line-height: 1.25; margin: 0 0 12px; text-transform: none;
}
.cotiza-modulo .cotiza-texto h2::after {
  content: ""; display: block; width: 48px; height: 4px;
  margin: 10px 0 0; border-radius: 2px; background: #78B82A;
}
.cotiza-modulo .cotiza-texto p { color: #fff; font-size: 14px; line-height: 1.6; margin: 0 0 18px; }
.cotiza-modulo a.cotiza-boton {
  display: block; text-align: center; padding: 11px 16px;
  background: #F5BD4A; color: #173B55; border-radius: 6px;
  font-size: 15px; font-weight: bold; text-decoration: none;
  transition: background .25s, transform .25s;
}
.cotiza-modulo a.cotiza-boton:hover { background: #F47D45; color: #fff; transform: translateY(-2px); }

/* tarjeta del formulario, compacta */
.cotiza-modulo .cotiza-form {
  background: #fff; border-radius: 8px; padding: 18px 18px 20px;
  box-shadow: 0 8px 26px rgba(0, 0, 0, .18);
}
.cotiza-modulo .cotiza-form .cotiza-form-titulo {
  color: #173B55 !important; font-size: 18px; font-weight: bold;
  margin: 0 0 12px; text-transform: none;
}
.cotiza-form .convertforms,
.cotiza-form .cf {
  background: none !important; box-shadow: none !important;
  border: 0 !important; padding: 0 !important; margin: 0 !important;
  max-width: 100% !important; width: 100% !important;
}
.cotiza-form input[type="text"],
.cotiza-form input[type="email"],
.cotiza-form select,
.cotiza-form textarea {
  width: 100%; box-sizing: border-box;
  padding: 8px 10px; background: #fff;
  border: 1px solid #d5dde2; border-radius: 4px;
  color: #3a4a55; font-size: 13px; box-shadow: none;
}
.cotiza-form textarea { min-height: 64px; resize: vertical; }
.cotiza-form input:focus,
.cotiza-form select:focus,
.cotiza-form textarea:focus {
  outline: 0; border-color: #1767A5; box-shadow: 0 0 0 3px rgba(23, 103, 165, .15);
}
.cotiza-form label { color: #3a4a55; font-size: 12px; }
.cotiza-form input[type="checkbox"] { margin-right: 6px; }
.cotiza-form button[type="submit"],
.cotiza-form input[type="submit"] {
  display: inline-block; padding: 10px 22px;
  background: #1767A5 !important; color: #fff !important;
  border: 0; border-radius: 6px;
  font-size: 14px; font-weight: bold; cursor: pointer;
  transition: background .25s;
}
.cotiza-form button[type="submit"]:hover,
.cotiza-form input[type="submit"]:hover { background: #78B82A !important; }

/* tableta: 2 columnas */
@media (max-width: 1199px) {
  .cotiza-modulo { grid-template-columns: 1fr 1fr; padding: 30px 20px; }
}
/* móvil: 1 columna */
@media (max-width: 767px) {
  .cotiza-modulo { grid-template-columns: 1fr; padding: 26px 15px; }
}
/* Rectángulo informativo: sin enlace, sin hover */
.cotiza-modulo .cotiza-boton {
  display: block; text-align: center; padding: 11px 16px;
  background: #F5BD4A; color: #173B55; border-radius: 6px;
  font-size: 15px; font-weight: bold; line-height: 1.3;
  cursor: default; pointer-events: none; user-select: none;
  transition: none; transform: none;
}
/* Formulario de cotización: una sola fuente para todos los campos */
.cotiza-form input,
.cotiza-form select,
.cotiza-form textarea,
.cotiza-form option,
.cotiza-form label,
.cotiza-form label *,
.cotiza-form .cf-checkbox-label,
.cotiza-form .cf-text {
  font-size: 13px !important;
  line-height: 1.4 !important;
  font-family: inherit !important;
}
.cotiza-form input::placeholder,
.cotiza-form textarea::placeholder {
  font-size: 13px !important;
  font-family: inherit !important;
}
.cotiza-form select { height: auto !important; }
/* Inicio: quitar el espacio entre Conocimiento ambiental y el pie */
body:has(.conocimiento-modulo) #content-row {
  margin: 0 !important;
  padding: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  overflow: hidden !important;
}
/* Contáctenos: mismo estilo que el resto del pie, sin tarjeta blanca */
.cotiza-modulo .cotiza-form {
  background: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
}
.cotiza-modulo .cotiza-form .cotiza-form-titulo {
  color: #fff !important;
  font-size: 24px; font-weight: 300;
  text-transform: uppercase; line-height: 1.2;
  margin: 0 0 18px;
}
.cotiza-modulo .cotiza-form .convertforms,
.cotiza-modulo .cotiza-form .cf,
.cotiza-modulo .cotiza-form form {
  background: none !important; box-shadow: none !important;
  border: 0 !important; padding: 0 !important; margin: 0 !important;
  max-width: 100% !important; width: 100% !important;
}

/* cajas: fondo blanco y borde azul */
.cotiza-modulo .cotiza-form input[type="text"],
.cotiza-modulo .cotiza-form input[type="email"],
.cotiza-modulo .cotiza-form select,
.cotiza-modulo .cotiza-form textarea {
  background: #fff !important;
  border: 1px solid #1767A5 !important;
  border-radius: 2px;
  color: #3a4a55;
}
.cotiza-modulo .cotiza-form input::placeholder,
.cotiza-modulo .cotiza-form textarea::placeholder { color: #7a8a95; }
.cotiza-modulo .cotiza-form input:focus,
.cotiza-modulo .cotiza-form select:focus,
.cotiza-modulo .cotiza-form textarea:focus {
  border-color: #F5BD4A !important;
  box-shadow: 0 0 0 3px rgba(245, 189, 74, .25);
}

/* texto de la casilla sobre fondo oscuro */
.cotiza-modulo .cotiza-form label,
.cotiza-modulo .cotiza-form label * { color: #fff !important; }
.cotiza-modulo .cotiza-form [class*="required"] { color: #F5BD4A !important; }
:where(div, section, main, article):has(.conocimiento-modulo) {
  margin-bottom: 0 !important;
}
.conocimiento-modulo { padding-bottom: 20px !important; margin-bottom: 0 !important; }
/* Línea bajo los títulos: verde de la plantilla en lugar de rojo */
h1,
.page-header h1,
.category_title,
.page-item .item_header h2.item_title,
.page-header h2,
#member-registration legend {
  border-bottom-color: #78B82A !important;
}
/* ===== Banner Quiénes somos ===== */
.quienes-banner { margin: 0 0 30px; background: #fff; border-radius: 6px; overflow: hidden; box-shadow: 0 4px 18px rgba(23, 59, 85, .08); }
.quienes-banner .quienes-foto img { display: block; width: 100%; height: auto; aspect-ratio: 8 / 3; object-fit: cover; border-radius: 0 !important; }
.quienes-banner .quienes-texto { padding: 26px 30px 30px; }
.quienes-banner .quienes-etiqueta { color: #1767A5; font-size: 14px; font-weight: bold; letter-spacing: 1.5px; text-transform: uppercase; margin: 0 0 8px; }
html body .quienes-banner .quienes-titulo { color: #173B55; font-size: 32px; font-weight: bold; line-height: 1.2; margin: 0 0 16px; padding: 0; border: 0 !important; text-transform: none; }
html body .quienes-banner .quienes-titulo::after { content: ""; display: block; width: 56px; height: 4px; margin-top: 12px; border-radius: 2px; background: #78B82A; }
.quienes-banner .quienes-desc { color: #3a4a55; font-size: 16px; line-height: 1.7; margin: 0; }
@media (max-width: 767px) {
  .quienes-banner .quienes-foto img { aspect-ratio: 16 / 9; }
  .quienes-banner .quienes-texto { padding: 20px 18px 24px; }
  html body .quienes-banner .quienes-titulo { font-size: 26px; }
}
/* ===== Página Quiénes somos ===== */
.qs { color: #3a4a55; }
.qs p { font-size: 15px; line-height: 1.7; margin: 0 0 14px; }
html body .qs h2, html body .qs h3 { border: 0 !important; text-transform: none; padding: 0; }
.qs .qs-seccion { margin: 0 0 30px; }
.qs .qs-banda { background: #F5F7F5; border-radius: 8px; padding: 36px 30px; }

.qs .qs-etiqueta { color: #1767A5; font-size: 13px; font-weight: bold; letter-spacing: 1.5px; text-transform: uppercase; margin: 0 0 6px; }
html body .qs h2.qs-titulo { color: #173B55; font-size: 30px; font-weight: bold; line-height: 1.2; margin: 0 0 16px; }
html body .qs h2.qs-titulo::after { content: ""; display: block; width: 56px; height: 4px; margin-top: 12px; border-radius: 2px; background: #78B82A; }
.qs .qs-head { text-align: center; margin-bottom: 26px; }
html body .qs .qs-head h2.qs-titulo::after { margin-left: auto; margin-right: auto; }

/* introducción */
.qs .qs-intro { display: grid; grid-template-columns: 1.5fr 1fr; gap: 34px; align-items: center; }
.qs .qs-destacado { --c: #fff; background: #1767A5; border-radius: 6px; padding: 38px 28px; text-align: center; box-shadow: 0 4px 18px rgba(23,59,85,.12); }
.qs .qs-destacado .qs-ico { background: rgba(255,255,255,.18); }
.qs .qs-destacado p { color: #fff; font-size: 22px; font-weight: bold; line-height: 1.3; margin: 0; }

/* rejillas */
.qs .qs-grid2 { display: grid; gap: 22px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.qs .qs-grid3 { display: grid; gap: 22px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.qs .qs-grid5 { display: grid; gap: 18px; grid-template-columns: repeat(5, minmax(0, 1fr)); }

/* tarjetas */
.qs .qs-card, .qs .qs-area { --c: #78B82A; }
.qs .qs-card:nth-child(3n+2), .qs .qs-area:nth-child(3n+2) { --c: #1767A5; }
.qs .qs-card:nth-child(3n+3), .qs .qs-area:nth-child(3n+3) { --c: #F47D45; }
.qs .qs-card {
  position: relative; background: #fff; border-top: 5px solid var(--c);
  border-radius: 6px; box-shadow: 0 4px 18px rgba(23,59,85,.08);
  padding: 26px 20px 24px; text-align: center;
  transition: transform .25s, box-shadow .25s;
}
.qs .qs-card:hover, .qs .qs-area:hover { transform: translateY(-4px); box-shadow: 0 10px 26px rgba(23,59,85,.16); }
.qs .qs-card h3 { color: #173B55; font-size: 18px; font-weight: bold; line-height: 1.3; margin: 0 0 10px; }
.qs .qs-card p { font-size: 14px; line-height: 1.6; margin: 0; }
.qs .qs-mv { text-align: left; }
.qs .qs-mv .qs-ico { margin-left: 0; }
.qs .qs-num { position: absolute; top: 10px; right: 14px; font-size: 30px; font-weight: bold; line-height: 1; color: rgba(23,59,85,.10); }

/* áreas de conocimiento */
.qs .qs-area {
  display: flex; gap: 14px; align-items: flex-start;
  background: #fff; border-left: 5px solid var(--c); border-radius: 6px;
  box-shadow: 0 4px 18px rgba(23,59,85,.08); padding: 18px;
  transition: transform .25s, box-shadow .25s;
}
.qs .qs-area .qs-ico { flex: none; width: 48px; height: 48px; margin: 0; }
.qs .qs-area .qs-ico::before { width: 24px; height: 24px; margin: -12px 0 0 -12px; }
.qs .qs-area h3 { color: #173B55; font-size: 16px; font-weight: bold; line-height: 1.3; margin: 0 0 6px; }
.qs .qs-area p { font-size: 13.5px; line-height: 1.55; margin: 0; }
.qs .qs-nota { text-align: center; margin: 22px 0 0; font-size: 14px; font-style: italic; }

/* experiencia */
.qs .qs-exp { display: grid; grid-template-columns: 1fr 1fr; gap: 34px; }

/* llamado a la acción */
.qs .qs-cta { display: grid; grid-template-columns: 1.5fr 1fr; gap: 28px; align-items: center; background: #173B55; border-radius: 8px; padding: 36px 34px; }
html body .qs h2.qs-cta-titulo { color: #fff; font-size: 28px; font-weight: bold; line-height: 1.2; margin: 0 0 12px; }
.qs .qs-cta p { color: #fff; margin: 0 0 10px; }
.qs .qs-cta-botones { display: flex; flex-direction: column; gap: 12px; }
.qs a.qs-btn { display: block; text-align: center; padding: 14px 20px; border-radius: 6px; font-size: 16px; font-weight: bold; text-decoration: none; transition: background .25s, color .25s, transform .25s; }
.qs a.qs-btn-1 { background: #F5BD4A; color: #173B55; }
.qs a.qs-btn-1:hover { background: #F47D45; color: #fff; transform: translateY(-2px); }
.qs a.qs-btn-2 { border: 2px solid #fff; color: #fff; }
.qs a.qs-btn-2:hover { background: #fff; color: #173B55; transform: translateY(-2px); }

/* círculo del icono */
.qs .qs-ico { position: relative; width: 64px; height: 64px; margin: 0 auto 14px; border-radius: 50%; background: #F5F7F5; }
.qs .qs-ico::before {
  content: ""; position: absolute; top: 50%; left: 50%;
  width: 32px; height: 32px; margin: -16px 0 0 -16px;
  background-color: var(--c, #1767A5);
  -webkit-mask: var(--i) center / contain no-repeat; mask: var(--i) center / contain no-repeat;
}

/* iconos */
.qs .i-hoja { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 20A7 7 0 0 1 9.8 6.1C15.5 5 17 4.48 19 2c1 2 2 4.18 2 8 0 5.5-4.78 10-10 10Z'/%3E%3Cpath d='M2 21c0-3 1.85-5.36 5.08-6C9.5 14.52 12 13 13 12'/%3E%3C/svg%3E"); }
.qs .i-monte { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m8 3 4 8 5-5 5 15H2L8 3z'/%3E%3C/svg%3E"); }
.qs .i-brote { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 20h10'/%3E%3Cpath d='M10 20c5.5-2.5.8-6.4 3-10'/%3E%3Cpath d='M9.5 9.4c1.1.8 1.8 2.2 2.3 3.7-2 .4-3.5.4-4.8-.3-1.2-.6-2.3-1.9-3-4.2 2.8-.5 4.4 0 5.5.8z'/%3E%3Cpath d='M14.1 6a7 7 0 0 0-1.1 4c1.9-.1 3.3-.6 4.3-1.4 1-1 1.6-2.3 1.7-4.6-2.7.1-4 1-4.9 2z'/%3E%3C/svg%3E"); }
.qs .i-meta { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Ccircle cx='12' cy='12' r='6'/%3E%3Ccircle cx='12' cy='12' r='2'/%3E%3C/svg%3E"); }
.qs .i-ojo { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3-7 10-7 10 7 10 7-3 7-10 7-10-7-10-7Z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E"); }
.qs .i-lista { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='8' y='2' width='8' height='4' rx='1'/%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3Cpath d='M12 11h4M12 16h4M8 11h.01M8 16h.01'/%3E%3C/svg%3E"); }
.qs .i-grafico { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 3v18h18'/%3E%3Cpath d='M18 17V9M13 17V5M8 17v-3'/%3E%3C/svg%3E"); }
.qs .i-brujula { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='m16.24 7.76-1.804 5.411a2 2 0 0 1-1.265 1.265L7.76 16.24l1.804-5.411a2 2 0 0 1 1.265-1.265z'/%3E%3C/svg%3E"); }
.qs .i-gente { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='9' cy='7' r='4'/%3E%3Cpath d='M22 21v-2a4 4 0 0 0-3-3.87'/%3E%3Cpath d='M16 3.13a4 4 0 0 1 0 7.75'/%3E%3C/svg%3E"); }
.qs .i-docvisto { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 2v6h6'/%3E%3Cpath d='m9 15 2 2 4-4'/%3E%3C/svg%3E"); }
.qs .i-lupa { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M16.5 16.5L21 21'/%3E%3C/svg%3E"); }
.qs .i-escudo { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z'/%3E%3Cpath d='m9 12 2 2 4-4'/%3E%3C/svg%3E"); }
.qs .i-balanza { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m16 16 3-8 3 8c-.87.65-1.92 1-3 1s-2.13-.35-3-1Z'/%3E%3Cpath d='m2 16 3-8 3 8c-.87.65-1.92 1-3 1s-2.13-.35-3-1Z'/%3E%3Cpath d='M7 21h10'/%3E%3Cpath d='M12 3v18'/%3E%3Cpath d='M3 7h2c2 0 5-1 7-2 2 1 5 2 7 2h2'/%3E%3C/svg%3E"); }
.qs .i-pin { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E"); }
.qs .i-ciclo { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8'/%3E%3Cpath d='M21 3v5h-5'/%3E%3Cpath d='M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16'/%3E%3Cpath d='M8 16H3v5'/%3E%3C/svg%3E"); }
.qs .i-gota { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22a7 7 0 0 0 7-7c0-2-1-3.9-3-5.5s-3.5-4-4-6.5c-.5 2.5-2 4.9-4 6.5C6 11.1 5 13 5 15a7 7 0 0 0 7 7z'/%3E%3C/svg%3E"); }
.qs .i-mapa { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6l6-3 6 3 6-3v15l-6 3-6-3-6 3z'/%3E%3Cpath d='M9 3v15M15 6v15'/%3E%3C/svg%3E"); }
.qs .i-pulso { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 12h-4l-3 9L9 3l-3 9H2'/%3E%3C/svg%3E"); }

/* tableta: 3 + 2 en las filas de cinco */
@media (max-width: 1199px) {
  .qs .qs-grid5 { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .qs .qs-grid5 > .qs-card { grid-column: span 2; }
  .qs .qs-grid5 > .qs-card:nth-child(n+4) { grid-column: span 3; }
}
@media (max-width: 991px) {
  .qs .qs-intro, .qs .qs-exp, .qs .qs-cta, .qs .qs-grid2, .qs .qs-grid3 { grid-template-columns: 1fr; }
}
/* móvil */
@media (max-width: 767px) {
  .qs .qs-grid5 { grid-template-columns: 1fr; }
  .qs .qs-grid5 > .qs-card, .qs .qs-grid5 > .qs-card:nth-child(n+4) { grid-column: auto; }
  .qs .qs-banda { padding: 28px 16px; }
  html body .qs h2.qs-titulo { font-size: 26px; }
  .qs .qs-cta { padding: 28px 20px; }
}
/* ===== Quiénes somos: banner a todo el ancho ===== */
/* oculta el título y la línea verde de arriba, y quita el espacio superior */
#component:has(.qs) .page-header,
#component:has(.qs) .item_header,
.page-item:has(.qs) .item_header { display: none !important; }
#content-row:has(.qs) { padding-top: 0 !important; }

.qs .qs-hero {
  position: relative; display: flex; align-items: center;
  min-height: 460px; margin: 0 -34px 34px; overflow: hidden;
  background: #173B55; border-radius: 0;
}
.qs .qs-hero > img {
  position: absolute; inset: 0; display: block;
  width: 100%; height: 100%; object-fit: cover; object-position: center;
  border-radius: 0 !important;
}
.qs .qs-hero::after {
  content: ""; position: absolute; inset: 0;
  background: linear-gradient(270deg, rgba(23,59,85,.88) 0%, rgba(23,59,85,.62) 42%, rgba(23,59,85,0) 78%);
}
.qs .qs-hero .qs-hero-contenido {
  position: relative; z-index: 1;
  width: 48%; margin-left: auto; padding: 40px 54px 40px 20px;
}

/* texto a la izquierda, como en tu diseño de referencia */
.qs .qs-hero.qs-hero-izq::after {
  background: linear-gradient(90deg, rgba(23,59,85,.88) 0%, rgba(23,59,85,.62) 42%, rgba(23,59,85,0) 78%);
}
.qs .qs-hero.qs-hero-izq .qs-hero-contenido { margin-left: 0; margin-right: auto; padding: 40px 20px 40px 54px; }

.qs .qs-hero .qs-hero-etiqueta {
  display: flex; align-items: center; gap: 12px;
  color: #fff; font-size: 13px; font-weight: bold;
  letter-spacing: 2px; text-transform: uppercase; margin: 0 0 14px;
}
.qs .qs-hero .qs-hero-etiqueta::before { content: ""; width: 32px; height: 3px; background: #78B82A; }

html body .qs .qs-hero h1.qs-hero-titulo {
  color: #fff; font-size: 44px; font-weight: bold; line-height: 1.1;
  margin: 0 0 18px; padding: 0; border: 0 !important; text-transform: none;
  text-shadow: 0 2px 12px rgba(0,0,0,.35);
}
.qs .qs-hero .qs-hero-desc { color: #fff; font-size: 17px; line-height: 1.6; margin: 0 0 26px; }

.qs .qs-hero .qs-hero-botones { display: flex; flex-wrap: wrap; gap: 14px; }
.qs .qs-hero a.qs-hero-btn {
  display: inline-block; padding: 13px 26px; border-radius: 30px;
  font-size: 15px; font-weight: bold; text-decoration: none;
  transition: background .25s, color .25s, border-color .25s, transform .25s;
}
.qs .qs-hero a.qs-hero-btn span { display: inline-block; margin-left: 6px; transition: transform .25s; }
.qs .qs-hero a.qs-hero-btn-1 { background: #78B82A; border: 2px solid #78B82A; color: #173B55; }
.qs .qs-hero a.qs-hero-btn-1:hover { background: #F5BD4A; border-color: #F5BD4A; transform: translateY(-2px); }
.qs .qs-hero a.qs-hero-btn-1:hover span { transform: translateX(5px); }
.qs .qs-hero a.qs-hero-btn-2 { background: transparent; border: 2px solid #fff; color: #fff; }
.qs .qs-hero a.qs-hero-btn-2:hover { background: #fff; color: #173B55; transform: translateY(-2px); }

/* tableta y celular */
@media (max-width: 1199px) {
  .qs .qs-hero { margin-left: 0; margin-right: 0; }
}
@media (max-width: 991px) {
  .qs .qs-hero .qs-hero-contenido,
  .qs .qs-hero.qs-hero-izq .qs-hero-contenido { width: 72%; }
}
@media (max-width: 767px) {
  .qs .qs-hero { min-height: 420px; }
  .qs .qs-hero::after,
  .qs .qs-hero.qs-hero-izq::after { background: rgba(23,59,85,.72); }
  .qs .qs-hero .qs-hero-contenido,
  .qs .qs-hero.qs-hero-izq .qs-hero-contenido { width: 100%; margin: 0; padding: 30px 20px; }
  html body .qs .qs-hero h1.qs-hero-titulo { font-size: 30px; }
  .qs .qs-hero .qs-hero-desc { font-size: 15px; }
}
/* ===== Equipo de especialistas ===== */
.equipo-modulo h1,
.equipo-modulo h2,
.equipo-modulo h3,
.equipo-modulo h4,
.equipo-modulo h2 a,
.equipo-modulo h3 a {
  color: #173B55 !important;
  font-weight: bold;
  border: 0 !important;
}
.equipo-modulo p,
.equipo-modulo .introtext {
  color: #3a4a55 !important;
  font-size: 14px;
  line-height: 1.5;
}
/* sin enlaces: ni clic ni cursor de mano */
.equipo-modulo a {
  pointer-events: none;
  cursor: default;
  text-decoration: none !important;
}
/* ===== Nuestra esencia: iconos PNG ===== */
.qs .qs-grid3 > .qs-card .qs-ico {
  width: 78px; height: 78px;
  background: var(--c);
}
.qs .qs-grid3 > .qs-card .qs-ico::before {
  width: 48px; height: 48px; margin: -24px 0 0 -24px;
  -webkit-mask: none; mask: none;
  background-color: transparent;
  background-position: center; background-repeat: no-repeat; background-size: contain;
}
/* Ecología */
.qs .qs-grid3 > .qs-card:nth-child(1) .qs-ico::before {
  background-image: url("/images/sampledata/asimages/featured/featured%20(2).png");
}
/* Entorno */
.qs .qs-grid3 > .qs-card:nth-child(2) .qs-ico::before {
  background-image: url("/images/sampledata/asimages/featured/featured%20(3).png");
}
/* Sostenibilidad */
.qs .qs-grid3 > .qs-card:nth-child(3) .qs-ico::before {
  background-image: url("/images/sampledata/asimages/featured/featured%20(1).png");
}
/* ===== Quiénes somos: foto de la introducción ===== */
.qs .qs-foto-intro {
  position: relative; align-self: stretch; min-height: 340px;
  border-radius: 6px; overflow: hidden;
  box-shadow: 0 4px 18px rgba(23, 59, 85, .12);
}
.qs .qs-foto-intro > img {
  position: absolute; inset: 0; display: block;
  width: 100%; height: 100%; object-fit: cover; object-position: center;
  border-radius: 0 !important;
}
.qs .qs-foto-sello {
  position: absolute; right: 16px; bottom: 16px;
  display: flex; align-items: center; gap: 12px; max-width: 80%;
  background: rgba(23, 59, 85, .92); border-radius: 6px; padding: 12px 16px;
}
.qs .qs-foto-sello .qs-ico { flex: none; width: 44px; height: 44px; margin: 0; background: #78B82A; }
.qs .qs-foto-sello .qs-ico::before {
  width: 24px; height: 24px; margin: -12px 0 0 -12px; background-color: #fff;
}
.qs .qs-foto-sello p { color: #fff; font-size: 15px; font-weight: bold; line-height: 1.3; margin: 0; }

@media (max-width: 991px) {
  .qs .qs-foto-intro { min-height: 260px; }
}
/* Foto de la introducción: formato horizontal */
.qs .qs-intro { align-items: center; }
.qs .qs-foto-intro { align-self: center; min-height: 0; }
.qs .qs-foto-intro > img {
  position: static; inset: auto;
  width: 100%; height: auto;
  object-fit: initial; aspect-ratio: auto;
}
.qs .qs-foto-sello { right: 10px; bottom: 10px; padding: 10px 12px; }
.qs .qs-foto-sello p { font-size: 14px; }
.qs .qs-foto-sello .qs-ico { width: 38px; height: 38px; }
/* ===== Quiénes somos: misión y visión con foto a la izquierda ===== */
.qs .qs-mv-fila {
  display: grid;
  grid-template-columns: 0.87fr 1fr 1fr;
  gap: 16px;
  align-items: stretch;
}
.qs .qs-mv-foto {
  position: relative;
  min-height: 300px;
  border-radius: 6px;
  overflow: hidden;
}
.qs .qs-mv-foto img {
  position: absolute; inset: 0;
  display: block;
  width: 100%; height: 100%;
  margin: 0; border: 0;
  object-fit: cover; object-position: 60% 50%;
  border-radius: 0 !important;
}
/* las dos tarjetas pasan a ser columnas directas de la fila */
.qs .qs-mv-fila .qs-grid2 { display: contents; }

@media (max-width: 1000px) {
  .qs .qs-mv-fila { grid-template-columns: 1fr 1fr; }
  .qs .qs-mv-fila .qs-mv-foto { grid-column: 1 / -1; min-height: 260px; }
}
@media (max-width: 640px) {
  .qs .qs-mv-fila { grid-template-columns: 1fr; }
}
/* ===== Quiénes somos: principios en un solo bloque con pasos ===== */
.qs .qs-flujo {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0 18px;
  background: #F5F7F5;
  border-radius: 8px;
  padding: 30px 26px 28px;
}
.qs .qs-flujo-item { position: relative; text-align: left; }

/* fila superior: círculo + número + flecha */
.qs .qs-flujo-top { display: flex; align-items: center; gap: 12px; margin: 0 0 14px; }
.qs .qs-flujo .qs-ico {
  flex: none; width: 56px; height: 56px; margin: 0;
  background: #173B55;
}
.qs .qs-flujo .qs-ico::before {
  width: 28px; height: 28px; margin: -14px 0 0 -14px;
  background-color: #fff;
}
.qs .qs-flujo-num {
  color: #1767A5; font-size: 30px; font-weight: bold; line-height: 1;
}
.qs .qs-flujo-item:not(:last-child) .qs-flujo-top::after {
  content: ""; flex: 1; max-width: 46px; height: 20px; margin-left: auto;
  background-color: #78B82A;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12h18'/%3E%3Cpath d='m15 6 6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12h18'/%3E%3Cpath d='m15 6 6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* texto */
html body .qs .qs-flujo-item h3 {
  color: #173B55; font-size: 17px; font-weight: bold; line-height: 1.3;
  margin: 0 0 8px; padding: 0 8px 0 0;
}
.qs .qs-flujo-item p {
  color: #3a4a55; font-size: 13.5px; line-height: 1.55; margin: 0; padding-right: 8px;
}

/* tableta: 3 columnas, sin flechas */
@media (max-width: 1199px) {
  .qs .qs-flujo { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 26px 18px; }
  .qs .qs-flujo-item .qs-flujo-top::after { display: none !important; }
}
/* celular: una columna */
@media (max-width: 767px) {
  .qs .qs-flujo { grid-template-columns: 1fr; padding: 24px 18px; }
}
/* ===== Quiénes somos: experiencia y capacidades en un solo bloque ===== */
.qs .qs-cap {
  display: grid;
  grid-template-columns: 1.33fr 1fr 1.37fr;
  align-items: stretch;
  background: #EEF3EF;
  border-radius: 8px;
  padding: 30px 0;
}
.qs .qs-cap-col { min-width: 0; padding: 0 30px; }
.qs .qs-cap-areas,
.qs .qs-cap-cta { border-left: 1px solid #C5D3CA; }

/* columna 1: texto */
.qs .qs-cap-etiqueta {
  display: flex; align-items: center; gap: 10px;
  color: #1767A5; font-size: 12px; font-weight: bold;
  letter-spacing: 1.5px; text-transform: uppercase; margin: 0 0 10px; padding: 0;
}
.qs .qs-cap-etiqueta::before { content: ""; flex: none; width: 28px; height: 3px; background: #78B82A; }
html body .qs h2.qs-cap-titulo {
  color: #173B55; font-size: 26px; font-weight: bold; line-height: 1.2;
  margin: 0 0 14px; padding: 0; text-transform: none;
}
.qs .qs-cap-texto { color: #3a4a55; font-size: 14px; line-height: 1.65; margin: 0; padding: 0; }

/* columna 2: áreas */
html body .qs h3.qs-cap-subtitulo {
  display: flex; align-items: center; gap: 8px;
  color: #173B55; font-size: 16px; font-weight: bold;
  margin: 0 0 18px; padding: 0; text-transform: none;
}
.qs .qs-cap-subtitulo .qs-ico {
  --c: #78B82A; display: inline-block; flex: none;
  width: 20px; height: 20px; margin: 0; background: none;
}
.qs .qs-cap-subtitulo .qs-ico::before { width: 18px; height: 18px; margin: -9px 0 0 -9px; }

.qs .qs-cap-lista { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px 12px; }
.qs .qs-cap-item { --c: #78B82A; }
.qs .qs-cap-item:nth-child(3n+2) { --c: #1767A5; }
.qs .qs-cap-item:nth-child(3n+3) { --c: #F47D45; }
.qs .qs-cap-item .qs-ico {
  width: 36px; height: 36px; margin: 0 0 8px;
  border-radius: 0; background: none;
}
.qs .qs-cap-item .qs-ico::before { width: 32px; height: 32px; margin: -16px 0 0 -16px; }
.qs .qs-cap-item span {
  display: block; color: #173B55; font-size: 13px; font-weight: 600; line-height: 1.3;
}

/* columna 3: foto + mensaje + botón */
.qs .qs-cap-cta { display: flex; align-items: stretch; gap: 14px; }
.qs .qs-cap-foto { position: relative; flex: 0 0 38%; min-height: 160px; border-radius: 6px; overflow: hidden; }
.qs .qs-cap-foto img {
  position: absolute; inset: 0; display: block;
  width: 100%; height: 100%; margin: 0; padding: 0; border: 0;
  background: none; object-fit: cover; border-radius: 0 !important;
}
.qs .qs-cap-panel {
  flex: 1; display: flex; flex-direction: column; justify-content: center; gap: 16px;
  background: #DFEBE3; border-radius: 6px; padding: 18px;
}
.qs .qs-cap-panel p { color: #173B55; font-size: 17px; font-weight: 600; line-height: 1.4; margin: 0; padding: 0; }
.qs a.qs-cap-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px; align-self: flex-start;
  background: #173B55; color: #fff; padding: 11px 18px; border-radius: 30px;
  font-size: 14px; font-weight: bold; text-decoration: none;
  transition: background .25s, color .25s, transform .25s;
}
.qs a.qs-cap-btn span { display: inline-block; transition: transform .25s; }
.qs a.qs-cap-btn:hover { background: #78B82A; color: #173B55; transform: translateY(-2px); }
.qs a.qs-cap-btn:hover span { transform: translateX(4px); }

@media (max-width: 1199px) {
  .qs .qs-cap-col { padding: 0 20px; }
  .qs .qs-cap-panel p { font-size: 15px; }
}
@media (max-width: 991px) {
  .qs .qs-cap { grid-template-columns: 1fr; padding: 26px 0; }
  .qs .qs-cap-col { padding: 0 22px; }
  .qs .qs-cap-areas,
  .qs .qs-cap-cta { border-left: 0; border-top: 1px solid #C5D3CA; margin-top: 24px; padding-top: 24px; }
}
@media (max-width: 640px) {
  .qs .qs-cap-lista { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .qs .qs-cap-cta { flex-direction: column; }
  .qs .qs-cap-foto { flex: none; min-height: 190px; }
}
/* ===== Página Servicios (usa la base .qs de Quiénes somos) ===== */

/* iconos nuevos */
.qs .i-ola { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 6c.6.5 1.2 1 2.5 1C7 7 7 5 9.5 5c2.6 0 2.4 2 5 2 2.5 0 2.5-2 5-2 1.3 0 1.9.5 2.5 1'/%3E%3Cpath d='M2 12c.6.5 1.2 1 2.5 1 2.5 0 2.5-2 5-2 2.6 0 2.4 2 5 2 2.5 0 2.5-2 5-2 1.3 0 1.9.5 2.5 1'/%3E%3Cpath d='M2 18c.6.5 1.2 1 2.5 1 2.5 0 2.5-2 5-2 2.6 0 2.4 2 5 2 2.5 0 2.5-2 5-2 1.3 0 1.9.5 2.5 1'/%3E%3C/svg%3E"); }
.qs .i-reciclar { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 19H4.815a1.83 1.83 0 0 1-1.57-.881 1.785 1.785 0 0 1-.004-1.784L7.196 9.5'/%3E%3Cpath d='M11 19h8.203a1.83 1.83 0 0 0 1.556-.89 1.784 1.784 0 0 0 0-1.775l-1.226-2.12'/%3E%3Cpath d='m14 16-3 3 3 3'/%3E%3Cpath d='M8.293 13.596 7.196 9.5 3.1 10.598'/%3E%3Cpath d='m9.344 5.811 1.093-1.892A1.83 1.83 0 0 1 11.985 3a1.784 1.784 0 0 1 1.546.888l3.943 6.843'/%3E%3Cpath d='m13.378 9.633 4.096 1.098 1.097-4.096'/%3E%3C/svg%3E"); }
.qs .i-nube { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z'/%3E%3C/svg%3E"); }
.qs .i-birrete { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 10v6'/%3E%3Cpath d='M2 10l10-5 10 5-10 5z'/%3E%3Cpath d='M6 12v5c3 3 9 3 12 0v-5'/%3E%3C/svg%3E"); }

/* banner: texto a la izquierda, un poco más ancho */
.sv .qs-hero.qs-hero-izq .qs-hero-contenido { width: 60%; }
html body .sv .qs-hero h1.qs-hero-titulo { font-size: 40px; }

/* módulos horizontales */
.sv .sv-modulo {
  --mc: #78B82A; --bg: #F2F8EA; --c: var(--mc);
  background: var(--bg); border-radius: 8px;
  padding: 30px 28px 32px; margin: 0 0 28px;
}
.sv .sv-azul { --mc: #1767A5; --bg: #EAF3FA; }
.sv .sv-naranja { --mc: #F47D45; --bg: #FDF1E9; }

/* cabecera del módulo: icono + número + título + foto */
.sv .sv-cab { display: flex; align-items: center; justify-content: space-between; gap: 30px; margin: 0 0 24px; }
.sv .sv-cab-texto { display: flex; align-items: center; gap: 22px; flex: 1; min-width: 0; }
.sv .sv-cab .qs-ico {
  flex: none; width: 84px; height: 84px; margin: 0;
  background: var(--mc); box-shadow: 0 0 0 6px rgba(255, 255, 255, .75);
}
.sv .sv-cab .qs-ico::before { width: 44px; height: 44px; margin: -22px 0 0 -22px; background-color: #fff; }
.sv .sv-num { display: block; color: var(--mc); font-size: 30px; font-weight: bold; line-height: 1; margin: 0 0 4px; }
html body .sv h2.sv-titulo { color: #173B55; font-size: 28px; font-weight: bold; line-height: 1.2; margin: 0 0 8px; }
.sv .sv-desc { color: #3a4a55; font-size: 15px; line-height: 1.6; margin: 0; padding: 0; }
.sv .sv-cab-foto { position: relative; flex: 0 0 42%; aspect-ratio: 3.75 / 1; border-radius: 6px; overflow: hidden; background: #DDE5E0; }
.sv .sv-cab-foto img {
  position: absolute; inset: 0; display: block; width: 100%; height: 100%;
  max-width: none; margin: 0; padding: 0; border: 0; background: none;
  object-fit: cover; border-radius: 0 !important;
}

/* tarjetas: mismo diseño y mismo tamaño de foto en todas */
.sv .sv-tarjetas { display: grid; gap: 16px; }
.sv .sv-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.sv .sv-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.sv .sv-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.sv a.sv-card {
  display: flex; flex-direction: column; box-sizing: border-box;
  background: #fff; border-top: 5px solid var(--mc); border-radius: 6px;
  box-shadow: 0 4px 18px rgba(23, 59, 85, .08);
  padding: 18px 16px; color: #3a4a55; text-decoration: none;
  transition: transform .25s, box-shadow .25s;
}
.sv a.sv-card:hover { transform: translateY(-4px); box-shadow: 0 10px 26px rgba(23, 59, 85, .16); color: #3a4a55; }
.sv .sv-card-top { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 0 0 14px; }
.sv .sv-card .qs-ico { flex: none; width: 56px; height: 56px; margin: 0; background: #F5F7F5; }
.sv .sv-card .qs-ico::before { width: 28px; height: 28px; margin: -14px 0 0 -14px; }
.sv .sv-card-foto { flex: none; width: 140px; height: 94px; border-radius: 4px; overflow: hidden; background: #DDE5E0; }
.sv .sv-card-foto img {
  display: block; width: 100%; height: 100%; max-width: none;
  margin: 0; padding: 0; border: 0; background: none;
  object-fit: cover; border-radius: 0 !important;
}
html body .sv .sv-card h3 { color: #173B55; font-size: 17px; font-weight: bold; line-height: 1.3; margin: 0 0 8px; }
.sv .sv-card p { color: #3a4a55; font-size: 13.5px; line-height: 1.55; margin: 0 0 14px; padding: 0; }
.sv .sv-enlace { margin-top: auto; color: #1767A5; font-size: 13.5px; font-weight: bold; }
.sv .sv-enlace span { display: inline-block; transition: transform .25s; }
.sv a.sv-card:hover .sv-enlace span { transform: translateX(4px); }

/* tableta */
@media (max-width: 1199px) {
  .sv .sv-cols-3, .sv .sv-cols-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sv .sv-cab-foto { flex-basis: 38%; }
}
@media (max-width: 991px) {
  .sv .qs-hero.qs-hero-izq .qs-hero-contenido { width: 80%; }
  .sv .sv-modulo { padding: 24px 18px; }
  .sv .sv-cab { flex-direction: column; align-items: stretch; gap: 20px; }
  .sv .sv-cab-foto { flex: none; width: 100%; aspect-ratio: 3 / 1; }
}
/* celular */
@media (max-width: 767px) {
  .sv .qs-hero.qs-hero-izq .qs-hero-contenido { width: 100%; }
  html body .sv .qs-hero h1.qs-hero-titulo { font-size: 30px; }
}
@media (max-width: 640px) {
  .sv .sv-tarjetas { grid-template-columns: 1fr !important; }
  .sv .sv-cab-texto { flex-direction: column; align-items: flex-start; gap: 14px; }
  html body .sv h2.sv-titulo { font-size: 24px; }
}
/* ===== Servicios: franja de cotización y compromisos ===== */
 
/* iconos nuevos */
.qs .i-engranaje { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z'/%3E%3Cpath d='M15 12a3 3 0 1 1-6 0 3 3 0 0 1 6 0z'/%3E%3C/svg%3E"); }
.qs .i-manos { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m11 17 2 2a1 1 0 1 0 3-3'/%3E%3Cpath d='m14 14 2.5 2.5a1 1 0 1 0 3-3l-3.88-3.88a3 3 0 0 0-4.24 0l-.88.88a1 1 0 1 1-3-3l2.81-2.81a5.79 5.79 0 0 1 7.06-.87l.47.28a2 2 0 0 0 1.42.25L21 4'/%3E%3Cpath d='m21 3 1 11h-2'/%3E%3Cpath d='M3 3 2 14l6.5 6.5a1 1 0 1 0 3-3'/%3E%3Cpath d='M3 4h8'/%3E%3C/svg%3E"); }
 
/* quitar el botón "Siguiente / Anterior" de Joomla en esta página */
#component:has(.sv) .pagenavigation,
#component:has(.sv) ul.pagenav,
#component:has(.sv) ul.pager,
.item-page:has(.sv) .pagenavigation,
.item-page:has(.sv) ul.pager { display: none !important; }
 
/* franja de cotización con foto de fondo */
.sv .sv-cta {
  position: relative; display: flex; align-items: center; justify-content: space-between; gap: 30px;
  margin: 0; padding: 34px 40px; overflow: hidden;
  border-radius: 8px 8px 0 0;
  background: #173B55 url("/images/servicios/servicios-cta-fondo.jpg") center / cover no-repeat;
}
.sv .sv-cta::before {
  content: ""; position: absolute; inset: 0;
  background: linear-gradient(90deg, rgba(23, 59, 85, .92) 0%, rgba(23, 59, 85, .72) 48%, rgba(23, 59, 85, .25) 100%);
}
.sv .sv-cta > * { position: relative; z-index: 1; }
.sv .sv-cta-texto { display: flex; align-items: center; gap: 22px; min-width: 0; }
.sv .sv-cta .qs-ico {
  flex: none; width: 72px; height: 72px; margin: 0;
  background: none; border: 2px solid #fff; box-sizing: border-box;
}
.sv .sv-cta .qs-ico::before { width: 36px; height: 36px; margin: -18px 0 0 -18px; background-color: #fff; }
html body .sv h2.sv-cta-titulo {
  color: #fff; font-size: 26px; font-weight: bold; line-height: 1.25; margin: 0 0 8px; padding: 0;
}
.sv .sv-cta p { color: #fff; font-size: 15px; line-height: 1.6; max-width: 560px; margin: 0; padding: 0; }
.sv a.sv-cta-btn {
  flex: none; display: inline-flex; align-items: center; gap: 10px;
  background: #F47D45; color: #fff; padding: 15px 28px; border-radius: 30px;
  font-size: 16px; font-weight: bold; text-decoration: none;
  transition: background .25s, color .25s, transform .25s;
}
.sv a.sv-cta-btn span { display: inline-block; transition: transform .25s; }
.sv a.sv-cta-btn:hover { background: #F5BD4A; color: #173B55; transform: translateY(-2px); }
.sv a.sv-cta-btn:hover span { transform: translateX(5px); }
 
/* franja de compromisos + lema */
.sv .sv-garantias {
  display: flex; align-items: center;
  margin: 0 0 28px; padding: 26px 30px;
  background: #F5F7F5; border-radius: 0 0 8px 8px;
}
.sv .sv-garantia {
  flex: 1; display: flex; align-items: center; gap: 14px;
  padding: 0 20px; border-right: 1px solid #CBD6CF; min-width: 0;
}
.sv .sv-garantia:first-child { padding-left: 0; }
.sv .sv-garantia .qs-ico { --c: #78B82A; flex: none; width: 46px; height: 46px; margin: 0; background: none; }
.sv .sv-garantia .qs-ico::before { width: 40px; height: 40px; margin: -20px 0 0 -20px; }
.sv .sv-garantia span { color: #173B55; font-size: 14px; line-height: 1.35; }
.sv .sv-lema {
  flex: 1.2; padding: 0 10px 0 24px; text-align: center;
  font-family: "Segoe Script", "Brush Script MT", "Lucida Handwriting", cursive;
  font-style: italic; color: #173B55; font-size: 24px; line-height: 1.2;
}
.sv .sv-lema::after {
  content: ""; display: block; width: 70%; height: 6px; margin: 8px auto 0;
  border-radius: 50%; background: #78B82A; transform: rotate(-3deg);
}
 
/* tableta */
@media (max-width: 991px) {
  .sv .sv-cta { flex-direction: column; align-items: flex-start; padding: 30px 26px; }
  .sv .sv-garantias { flex-wrap: wrap; gap: 20px 0; padding: 24px 20px; }
  .sv .sv-garantia { flex: 0 0 50%; box-sizing: border-box; padding: 0 12px 0 0; border-right: 0; }
  .sv .sv-lema { flex: 0 0 100%; padding: 8px 0 0; }
}
/* celular */
@media (max-width: 640px) {
  .sv .sv-cta-texto { flex-direction: column; align-items: flex-start; gap: 14px; }
  html body .sv h2.sv-cta-titulo { font-size: 22px; }
  .sv .sv-garantia { flex: 0 0 100%; }
}
/* ===== Quiénes somos: fondos tenues por sección (igual que Servicios) ===== */
.qs:not(.sv) .qs-seccion {
  padding: 34px 30px; margin: 0 0 28px; border-radius: 8px;
}
/* verde */
.qs:not(.sv) .qs-intro,
.qs:not(.sv) .qs-seccion:has(.qs-paso),
.qs:not(.sv) .qs-seccion:has(.qs-exp) { background: #F2F8EA; }
/* azul */
.qs:not(.sv) .qs-seccion:has(.i-monte),
.qs:not(.sv) .qs-seccion:has(.qs-flujo) { background: #EAF3FA; }
/* naranja */
.qs:not(.sv) .qs-seccion:has(.qs-mv-fila),
.qs:not(.sv) .qs-seccion:has(.qs-cap) { background: #FDF1E9; }

/* bloques grandes: tarjeta blanca sobre el fondo tenue */
.qs:not(.sv) .qs-flujo,
.qs:not(.sv) .qs-cap {
  background: #fff; box-shadow: 0 4px 18px rgba(23, 59, 85, .08);
}
.qs:not(.sv) .qs-cap-panel { background: #EEF3EF; }

@media (max-width: 767px) {
  .qs:not(.sv) .qs-seccion { padding: 26px 16px; }
}
/* ===== Inicio: módulos con fondo tenue (mismo patrón que Servicios) ===== */

/* caja común: mismo ancho, esquinas y espacio entre módulos */
.moduletable-wrapper:has(.servicios-grid),
.moduletable-wrapper:has(.proyectos-modulo),
.moduletable-wrapper:has(.metodologia-modulo),
.moduletable-wrapper:has(.conocimiento-modulo) {
  border-radius: 8px;
  padding: 34px 40px 36px !important;
  margin: 0 0 24px !important;
  overflow: visible !important;
}

/* colores */
.moduletable-wrapper:has(.servicios-grid),
.moduletable-wrapper:has(.conocimiento-modulo) { background: #F2F8EA !important; }
.moduletable-wrapper:has(.proyectos-modulo)    { background: #EAF3FA !important; }
.moduletable-wrapper:has(.metodologia-modulo)  { background: #FDF1E9 !important; }

/* los módulos por dentro ya no llevan fondo ni márgenes propios */
.servicios-grid,
.proyectos-modulo,
.conocimiento-modulo { padding: 0 !important; margin: 0 !important; }
.metodologia-modulo {
  background: none !important; border-radius: 0 !important;
  padding: 0 !important; margin: 0 !important;
}

/* visión integral: misma caja tenue */
.vision-ambiente {
  background: #FFFFFF !important;
  border-left-color: #F47D45 !important;
}

@media (max-width: 767px) {
  .moduletable-wrapper:has(.servicios-grid),
  .moduletable-wrapper:has(.proyectos-modulo),
  .moduletable-wrapper:has(.metodologia-modulo),
  .moduletable-wrapper:has(.conocimiento-modulo) {
    padding: 24px 14px 26px !important;
  }
}
/* ===== Página Proyectos: ajustes dentro del artículo ===== */

/* ocultar la línea "in Special Services | fecha | autor | Hits" */
#component:has(.qs) .article-info,
#component:has(.qs) .item_info_dl { display: none !important; }

/* título de la caja: igual que en el módulo */
.sv .proyectos-head { text-align: center; margin-bottom: 28px; }
.sv .proyectos-head p { font-size: 16px; line-height: 1.5; margin: 10px 0 0; }

/* fotos de las tarjetas: sin márgenes heredados del artículo */
.sv .proyecto-media img {
  display: block; width: 100%; max-width: none;
  margin: 0 !important; padding: 0; border: 0; background: none;
}
.sv .proyecto-servicio { font-size: 14px; line-height: 1.5; }
/* ===== Proyectos: banner de cierre ===== */
.qs .i-mundo { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 12a10 10 0 1 1-20 0 10 10 0 0 1 20 0z'/%3E%3Cpath d='M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20'/%3E%3Cpath d='M2 12h20'/%3E%3C/svg%3E"); }

.sv .sv-cierre {
  position: relative; display: flex; align-items: center; gap: 28px;
  margin: 0 0 28px; padding: 30px 34px 58px;
  background: #F2F8EA; border-radius: 8px; overflow: hidden;
}
/* ola verde y azul profundo en la base */
.sv .sv-cierre::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 38px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 40' preserveAspectRatio='none'%3E%3Cpath d='M0 20 C260 -4 640 38 1200 6 L1200 40 L0 40 Z' fill='%2378B82A'/%3E%3Cpath d='M0 33 C380 14 820 42 1200 24 L1200 40 L0 40 Z' fill='%23173B55'/%3E%3C/svg%3E") center bottom / 100% 100% no-repeat;
}
.sv .sv-cierre > * { position: relative; z-index: 1; }

.sv .sv-cierre-icono { flex: none; }
.sv .sv-cierre .qs-ico {
  --c: #fff; width: 76px; height: 76px; margin: 0;
  background: #78B82A; box-shadow: 0 0 0 6px rgba(255, 255, 255, .75);
}
.sv .sv-cierre .qs-ico::before { width: 42px; height: 42px; margin: -21px 0 0 -21px; background-color: #fff; }

.sv .sv-cierre-texto { flex: 1; min-width: 0; padding-right: 28px; border-right: 1px solid #B9CBA6; }
html body .sv h2.sv-cierre-titulo {
  color: #173B55; font-size: 26px; font-weight: bold; line-height: 1.25;
  margin: 0 0 6px; padding: 0;
}
.sv .sv-cierre-texto p { color: #3a4a55; font-size: 15px; line-height: 1.6; margin: 0; padding: 0; }

.sv a.sv-cierre-btn {
  flex: none; display: inline-flex; align-items: center; gap: 10px;
  background: #173B55; color: #fff; padding: 14px 28px; border-radius: 30px;
  font-size: 16px; font-weight: bold; text-decoration: none;
  transition: background .25s, color .25s, transform .25s;
}
.sv a.sv-cierre-btn span { display: inline-block; transition: transform .25s; }
.sv a.sv-cierre-btn:hover { background: #78B82A; color: #173B55; transform: translateY(-2px); }
.sv a.sv-cierre-btn:hover span { transform: translateX(5px); }

@media (max-width: 767px) {
  .sv .sv-cierre { flex-direction: column; align-items: flex-start; gap: 18px; padding: 26px 20px 60px; }
  .sv .sv-cierre-texto { padding-right: 0; border-right: 0; }
  html body .sv h2.sv-cierre-titulo { font-size: 22px; }
}
/* ===== Página Contacto (usa la base .qs .sv) ===== */

/* iconos de teléfono y correo para esta base */
.qs .i-tel { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E"); }
.qs .i-mail { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='20' height='16' x='2' y='4' rx='2'/%3E%3Cpath d='m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7'/%3E%3C/svg%3E"); }

/* banner más bajo que el de Servicios */
.sv .qs-hero.sv-hero-corto { min-height: 330px; }

/* tres columnas: foto | información | formulario */
.sv .sv-contacto {
  display: grid; grid-template-columns: 1.3fr 1fr 1.5fr; gap: 22px;
  align-items: stretch; margin: 0 0 28px;
}
.sv .sv-contacto-foto {
  position: relative; min-height: 400px; border-radius: 10px; overflow: hidden;
  box-shadow: 0 4px 18px rgba(23, 59, 85, .10);
}
.sv .sv-contacto-foto img {
  position: absolute; inset: 0; display: block; width: 100%; height: 100%;
  max-width: none; margin: 0; padding: 0; border: 0; background: none;
  object-fit: cover; object-position: 55% 50%; border-radius: 0 !important;
}

/* información de contacto */
.sv .sv-contacto-info { background: #F2F8EA; border-radius: 10px; padding: 28px 24px; min-width: 0; }
html body .sv h2.sv-contacto-titulo {
  color: #173B55; font-size: 22px; font-weight: bold; line-height: 1.25;
  margin: 0 0 22px; padding: 0;
}
.sv .sv-dato { display: flex; align-items: flex-start; gap: 14px; margin: 0 0 20px; }
.sv .sv-dato .qs-ico {
  flex: none; width: 42px; height: 42px; margin: 0; background: #173B55;
}
.sv .sv-dato .qs-ico::before { width: 22px; height: 22px; margin: -11px 0 0 -11px; background-color: #fff; }
html body .sv .sv-dato h3 { color: #173B55; font-size: 16px; font-weight: bold; line-height: 1.3; margin: 0 0 3px; padding: 0; }
.sv .sv-dato p { color: #3a4a55; font-size: 14px; line-height: 1.55; margin: 0; padding: 0; word-break: break-word; }
.sv .sv-dato a { color: #1767A5; text-decoration: none; }
.sv .sv-dato a:hover { color: #78B82A; }

/* tarjeta del formulario */
.sv .sv-contacto-form {
  background: #fff; border-radius: 10px; overflow: hidden; min-width: 0;
  box-shadow: 0 4px 18px rgba(23, 59, 85, .10);
}
.sv .sv-form-cab { display: flex; align-items: center; gap: 12px; background: #173B55; padding: 16px 22px; }
.sv .sv-form-cab .qs-ico { flex: none; width: 30px; height: 30px; margin: 0; background: none; }
.sv .sv-form-cab .qs-ico::before { width: 28px; height: 28px; margin: -14px 0 0 -14px; background-color: #fff; }
html body .sv .sv-form-cab h2 { color: #fff; font-size: 20px; font-weight: bold; line-height: 1.2; margin: 0; padding: 0; }
.sv .sv-form-cuerpo { padding: 22px 22px 24px; }

/* Convert Forms dentro de la tarjeta */
.sv .sv-form-cuerpo .convertforms,
.sv .sv-form-cuerpo .cf {
  background: none !important; box-shadow: none !important; border: 0 !important;
  padding: 0 !important; margin: 0 !important; max-width: 100% !important; width: 100% !important;
}
.sv .sv-form-cuerpo input[type="text"],
.sv .sv-form-cuerpo input[type="email"],
.sv .sv-form-cuerpo input[type="tel"],
.sv .sv-form-cuerpo select,
.sv .sv-form-cuerpo textarea {
  width: 100%; box-sizing: border-box; height: auto !important;
  padding: 11px 12px !important; background: #fff;
  border: 1px solid #C9D6CF !important; border-radius: 6px;
  color: #3a4a55; font-size: 14px !important; line-height: 1.4 !important;
  font-family: inherit !important; box-shadow: none;
}
.sv .sv-form-cuerpo textarea { min-height: 130px; resize: vertical; }
.sv .sv-form-cuerpo input::placeholder,
.sv .sv-form-cuerpo textarea::placeholder { color: #7a8a95; font-size: 14px !important; font-family: inherit !important; }
.sv .sv-form-cuerpo input:focus,
.sv .sv-form-cuerpo select:focus,
.sv .sv-form-cuerpo textarea:focus {
  outline: 0; border-color: #1767A5 !important; box-shadow: 0 0 0 3px rgba(23, 103, 165, .15);
}
.sv .sv-form-cuerpo label { color: #3a4a55; font-size: 13px !important; line-height: 1.4 !important; font-family: inherit !important; }
.sv .sv-form-cuerpo button[type="submit"],
.sv .sv-form-cuerpo input[type="submit"] {
  display: block; width: 100%; padding: 13px 20px; border: 0; border-radius: 30px;
  background: #1767A5 !important; color: #fff !important;
  font-size: 16px; font-weight: bold; cursor: pointer;
  transition: background .25s, color .25s;
}
.sv .sv-form-cuerpo button[type="submit"]:hover,
.sv .sv-form-cuerpo input[type="submit"]:hover { background: #78B82A !important; color: #173B55 !important; }

/* banner de cierre con tres insignias */
.sv .sv-cierre-ins .sv-insignias { flex: none; display: flex; align-items: center; }
.sv .sv-insignia {
  width: 132px; display: flex; flex-direction: column; align-items: center; gap: 6px;
  padding: 0 14px; text-align: center; box-sizing: border-box;
}
.sv .sv-insignia + .sv-insignia { border-left: 1px solid #B9CBA6; }
.sv .sv-cierre .sv-insignia .qs-ico {
  --c: #78B82A; width: 40px; height: 40px; margin: 0; background: none; box-shadow: none;
}
.sv .sv-cierre .sv-insignia .qs-ico::before { width: 36px; height: 36px; margin: -18px 0 0 -18px; background-color: var(--c); }
.sv .sv-insignia span { color: #173B55; font-size: 13.5px; font-weight: 600; line-height: 1.3; }

/* tableta */
@media (max-width: 991px) {
  .sv .sv-contacto { grid-template-columns: 1fr 1fr; }
  .sv .sv-contacto-foto { grid-column: 1 / -1; min-height: 280px; }
  .sv .sv-cierre-ins { flex-wrap: wrap; }
  .sv .sv-cierre-ins .sv-cierre-texto { border-right: 0; padding-right: 0; flex: 1 1 60%; }
  .sv .sv-cierre-ins .sv-insignias { flex: 1 1 100%; justify-content: space-between; }
}
/* celular */
@media (max-width: 640px) {
  .sv .qs-hero.sv-hero-corto { min-height: 300px; }
  .sv .sv-contacto { grid-template-columns: 1fr; }
  .sv .sv-cierre-ins .sv-insignias { flex-wrap: wrap; gap: 14px 0; }
  .sv .sv-insignia { width: 50%; }
  .sv .sv-insignia + .sv-insignia { border-left: 0; }
}
/* ===== Nuestro equipo: caja con fondo tenue (igual que los demás módulos) ===== */

/* quitar la línea azul de arriba */
#content-row-6:has(.equipo-modulo) .content-row-separator { display: none; }

/* caja azul tenue con esquinas redondeadas */
#content-row-6 .moduletable.equipo-modulo {
  background: #EAF3FA;
  border-radius: 8px;
  padding: 34px 40px 36px;
  box-sizing: border-box;
}
#content-row-6 .equipo-modulo .moduletable-wrapper {
  background: none; border: 0; padding: 0;
}

/* título centrado con la barra verde */
#content-row-6 .equipo-modulo h1.moduleTitle {
  color: #173B55 !important;
  font-size: 30px; font-weight: bold; line-height: 1.2;
  text-align: center; text-transform: none;
  margin: 0 0 30px; padding: 0; border: 0 !important;
}
#content-row-6 .equipo-modulo h1.moduleTitle span { color: inherit !important; }
#content-row-6 .equipo-modulo h1.moduleTitle::after {
  content: ""; display: block; width: 56px; height: 4px;
  margin: 12px auto 0; border-radius: 2px; background: #78B82A;
}

/* fotos con esquinas redondeadas y sombra suave */
.equipo-modulo .item_img img {
  border-radius: 8px;
  box-shadow: 0 4px 18px rgba(23, 59, 85, .10);
}

/* línea de puntos entre filas, más suave sobre el fondo azul */
#content-row-6 .equipo-modulo .mod-newsflash-adv .row-fluid {
  border-bottom-color: #B5C7D6;
}
#content-row-6 .equipo-modulo .mod-newsflash-adv .row-fluid.lastRow {
  border-bottom: 0;
}

@media (max-width: 767px) {
  #content-row-6 .moduletable.equipo-modulo { padding: 24px 14px 26px; }
}
/* Inicio: quitar "read more" de Ecología, Entorno y Sostenibilidad */
article.span4.item.item__module a.readmore { display: none !important; }