/*
Theme Name: Spike Business
Theme URI: https://kortezthemes.com/spike-business/
Author: kortezthemes
Author URI: https://kortezthemes.com
Description: Spike Business is a multi-Purpose WordPress theme for all kinds of business consulting services, such as business consulting, marketing consulting, advertising consulting, financial advisors, insurance brokers, investment consultants, accountant services, HR consulting and many more.
Version: 1.0.4
Requires at least: 6.0
Tested up to: 6.9
Requires PHP: 5.6
License: GPLv3 or later
License URI: http://www.gnu.org/licenses/gpl-3.0.html
Text Domain: spike-business
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, threaded-comments, translation-ready, wide-blocks, block-styles, blog, portfolio, education

Spike Business WordPress Theme, Copyright 2024 kortezthemes
Spike Business is distributed under the terms of the GNU General Public License v3
*/

/* Reset Default Blocks Gap */
body.editor-styles-wrapper .wp-site-blocks > * {
  	margin-block-start: 0;
}
.wp-site-blocks > * {
  	margin-block-start: 0;
}

/* Support Alignfull */
body {
  	overflow-x: hidden;
}
.entry-content .alignfull {
	margin-left: calc( -50vw + 50%);
	margin-right: calc( -50vw + 50%);
	max-width: 100vw;
	width: 100vw;
}

/*Custom Box Shadow [is-style-sb-box-shadow]*/
.wp-block-image.is-style-sb-box-shadow img,
.wp-block-column.is-style-sb-box-shadow,
.wp-block-columns.is-style-sb-box-shadow,
.wp-block-group.is-style-sb-box-shadow {
  box-shadow: 0 0 40px rgba(0, 0, 0, 0.05);
}
.wp-block-image.is-style-sb-box-shadow-medium img,
.wp-block-column.is-style-sb-box-shadow-medium,
.wp-block-columns.is-style-sb-box-shadow-medium,
.wp-block-group.is-style-sb-box-shadow-medium {
  box-shadow: 0 0 40px rgba(0, 0, 0, 0.1);
}
.wp-block-image.is-style-sb-box-shadow-large img,
.wp-block-column.is-style-sb-box-shadow-large,
.wp-block-columns.is-style-sb-box-shadow-large,
.wp-block-group.is-style-sb-box-shadow-large {
  box-shadow: 0 0 40px rgba(0, 0, 0, 0.15);
}
.wp-block-image.is-style-sb-box-shadow-hover img:hover,
.wp-block-column.is-style-sb-box-shadow-hover:hover,
.wp-block-columns.is-style-sb-box-shadow-hover:hover,
.wp-block-group.is-style-sb-box-shadow-hover:hover {
  box-shadow: 0 0 40px rgba(0, 0, 0, 0.06);
}

/*Secondary button [is-style-sb-button-secondary]*/
div.is-style-sb-button-secondary .wp-element-button{
  color: var(--wp--preset--color--secondary-accent-text);
  background-color: var(--wp--preset--color--secondary-accent);
  border: 3px solid var(--wp--preset--color--secondary-accent) !important;
}
div.is-style-sb-button-secondary .wp-element-button:hover,
div.is-style-sb-button-secondary .wp-element-button:focus,
div.is-style-sb-button-secondary .wp-element-button:active {
    color: #ffffff;
    background-color: var(--wp--preset--color--hover);
    border-color: var(--wp--preset--color--hover) !important;
}
/*SVG icon color support [sb-duotone-primary] [sb-duotone-secondary]*/
.sb-duotone-primary {
  filter: var(--wp--preset--duotone--primary);
}
.sb-duotone-secondary {
    filter: var(--wp--preset--duotone--secondary);
}

/*WooCommerce Compatibility*/
.woocommerce ul.products li.product a img {
  border-radius: 6px;
  height: 350px;
  object-fit: cover;
}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  margin: 0 2.5% 2.992em 0;
  width: 23.1%;
}
.woocommerce ul.products li.last,
.woocommerce-page ul.products li.last {
  margin-right: 0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li {
  border-radius: 0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active:before,
.woocommerce div.product .woocommerce-tabs ul.tabs li:before,
.woocommerce div.product .woocommerce-tabs ul.tabs li.active:after {
  display: none;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li:after {
  border: 0;
}
.woocommerce #reviews #comments ol.commentlist {
  padding: 0;
  margin-top: 20px !important;
}
.woocommerce-page .input-text {
  padding: 11px 30px;
  border: 1px solid #817e7e;
  border-radius: 6px;
}
.woocommerce-page .wc-block-components-product-name {
    font-size: var(--wp--preset--font-size--small);
    text-decoration: none;
    font-weight: var(--wp--custom--font-weight--semi-bold);
}
.woocommerce .bt-woo-breadcrumb-center .woocommerce-breadcrumb {
  text-align: center;
}
.woocommerce .bt-woo-breadcrumb-left .woocommerce-breadcrumb {
  text-align: left;
}
.woocommerce .bt-woo-breadcrumb-right .woocommerce-breadcrumb {
  text-align: right;
}
/*Single Product Gallary*/
.woocommerce div.product div.images .flex-control-thumbs,
.woocommerce .flex-control-thumbs {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  overflow: hidden;
  zoom: 1;
  margin-top: 10px;
  padding: 0;
}
.woocommerce div.product div.images .flex-control-thumbs li:nth-child(4n+1),
.woocommerce .flex-control-thumbs li:nth-child(4n+1) {
  clear: left;
}
.woocommerce div.product div.images .flex-control-thumbs li,
.woocommerce .flex-control-thumbs li {
  width: 100%;
  float: left;
  margin: 0;
  padding: 0;
  list-style: none;
}
.woocommerce div.product div.images .flex-control-thumbs li img,
.woocommerce .flex-control-thumbs li img {
  cursor: pointer;
  opacity: .5;
  margin: 0;
  display: block;
  width: 100%;
  height: auto;
  box-shadow: none;
}
.woocommerce div.product div.images .flex-control-thumbs li img.flex-active,
.woocommerce div.product div.images .flex-control-thumbs li img:hover,
.woocommerce .flex-control-thumbs li img.flex-active,
.woocommerce .flex-control-thumbs li img:hover {
  opacity: 1;
}
.woocommerce span.onsale {
  background-color: var(--wp--preset--color--light);
}
/*Single Product Page Price*/
.woocommerce .wp-block-add-to-cart-form form.cart div.quantity {
  display: inline-block;
  float: none;
  vertical-align: middle;
  margin: 0 10px 0 0;
}
/*Single Product Tab*/
.wp-block-woocommerce-product-details ul.wc-tabs {
    border-bottom: none;
}

/* Navigation */
@media screen and (min-width: 600px){
    .wp-block-navigation ul.wp-block-navigation-submenu li {
        border-bottom: 1px solid rgba(0,0,0,.15);
    }
    .wp-block-navigation ul.wp-block-navigation-submenu li:last-child {
        border: none;
    }
}

/* Garal Soluciones patch v6 */
:root{
  --garal-blue:#004aad;
  --garal-blue-2:#1986c9;
  --garal-blue-3:#83c5ce;
  --garal-red:#ef0000;
  --garal-gray:#545454;
}

a{ text-underline-offset: 0.18em; }
.wp-element-button,
.wp-block-button__link{
  transition: all .25s ease;
}
.wp-block-button__link:hover{
  transform: translateY(-1px);
}
.wp-block-navigation .wp-block-navigation-item__content:hover{
  color: var(--wp--preset--color--primary);
}

/* Secondary button fix */
div.is-style-sb-button-secondary .wp-element-button{
  color:#ffffff;
  background-color: var(--wp--preset--color--secondary);
  border:3px solid var(--wp--preset--color--secondary) !important;
}
div.is-style-sb-button-secondary .wp-element-button:hover,
div.is-style-sb-button-secondary .wp-element-button:focus,
div.is-style-sb-button-secondary .wp-element-button:active {
  color:#ffffff;
  background-color: var(--wp--preset--color--hover);
  border-color: var(--wp--preset--color--hover) !important;
}

/* Service and icon cards */
.garal-service-placeholder,
.garal-icon-badge{
  width:72px;
  max-width:72px;
  margin-left:auto;
  margin-right:auto;
}
.garal-service-card{
  height:100%;
}
.garal-service-card:hover{
  transform:translateY(-4px);
  transition:transform .25s ease, box-shadow .25s ease;
  box-shadow:0 18px 48px rgba(0,74,173,.10);
}
.garal-service-card .wp-block-heading{
  margin-top:14px;
  margin-bottom:8px;
}
.garal-kicker{
  letter-spacing:.12em;
  text-transform:uppercase;
}
.garal-accent-line{
  width:72px;
  height:4px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--garal-blue),var(--garal-blue-3));
}

/* Form styles */
.garal-form{
  margin-top:var(--wp--preset--spacing--small);
  font-family:inherit;
}
.garal-form label{
  display:block;
  font-size:14px;
  font-weight:600;
  margin:0 0 8px;
  color:var(--wp--preset--color--heading);
}
.garal-form input,
.garal-form textarea,
.garal-form select,
.garal-form button{
  font-family:inherit;
  font-size:var(--wp--preset--font-size--small);
  line-height:1.45;
}
.garal-form input,
.garal-form textarea,
.garal-form select{
  width:100%;
  padding:16px 18px;
  border:1px solid var(--wp--preset--color--outline);
  border-radius:16px;
  background:var(--wp--preset--color--background);
  color:var(--wp--preset--color--body);
  box-sizing:border-box;
  box-shadow:none;
}
.garal-form input::placeholder,
.garal-form textarea::placeholder{
  color:#7d8794;
  opacity:1;
}
.garal-form input:focus,
.garal-form textarea:focus,
.garal-form select:focus{
  outline:none;
  border-color:var(--garal-blue);
  box-shadow:0 0 0 3px rgba(0,74,173,.08);
}
.garal-form textarea{
  min-height:170px;
  resize:vertical;
}
.garal-form .garal-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.garal-form .garal-full{
  grid-column:1/-1;
}
.garal-form .garal-submit{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:18px;
  padding:14px 24px;
  border-radius:999px;
  border:3px solid var(--garal-blue);
  background:var(--garal-blue);
  color:#fff;
  font-weight:600;
  cursor:pointer;
}
.garal-form .garal-submit:hover{
  background:var(--garal-red);
  border-color:var(--garal-red);
}
.garal-form .garal-note{
  font-size:14px;
  opacity:.8;
  margin-top:14px;
}
@media (max-width: 781px){
  .garal-form .garal-grid{grid-template-columns:1fr;}
}

/* Check list */
.garal-check-list{list-style:none;padding-left:0;margin:0;}
.garal-check-list li{position:relative;padding-left:28px;margin:0 0 12px;}
.garal-check-list li:before{content:"✓";position:absolute;left:0;top:0;color:var(--wp--preset--color--secondary);font-weight:700;}

/* Blog refinements */
.garal-blog-hero .wp-block-search__inside-wrapper,
.garal-blog-sidebar .wp-block-search__inside-wrapper{
  border:1px solid var(--wp--preset--color--outline);
  border-radius:18px;
  overflow:hidden;
  background:#fff;
}
.garal-blog-hero .wp-block-search__input,
.garal-blog-sidebar .wp-block-search__input{
  border:none !important;
  padding:16px 18px;
}
.garal-blog-hero .wp-block-search__button,
.garal-blog-sidebar .wp-block-search__button{
  margin:6px;
  border-radius:14px;
}
.garal-blog-card{height:100%;transition:transform .25s ease, box-shadow .25s ease;}
.garal-blog-card:hover{transform:translateY(-4px);box-shadow:0 18px 45px rgba(10,27,56,.10);}
.garal-blog-sidebar .wp-block-latest-posts{margin:0;padding-left:0;list-style:none}
.garal-blog-sidebar .wp-block-latest-posts li{padding:0 0 12px 0;margin:0 0 12px 0;border-bottom:1px solid rgba(0,0,0,.08)}
.garal-blog-sidebar .wp-block-latest-posts li:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}
.garal-blog-sidebar .wp-block-categories-list li{padding:10px 0;border-bottom:1px solid #e7ebf2;}
.garal-blog-sidebar .wp-block-categories-list li:last-child{border-bottom:none;padding-bottom:0;}
.garal-blog-sidebar a{text-decoration:none;}

/* Utility surfaces */
.garal-soft-surface{
  background: linear-gradient(180deg, rgba(131,197,206,.10) 0%, rgba(0,74,173,.04) 100%);
}


/* Garal Soluciones patch v7 */
:root{
  --garal-blue:#004aad;
  --garal-soft-gray:#f5f5f5;
  --garal-light-gray:#ededed;
  --garal-outline:#d9d9d9;
  --garal-dark:#545454;
  --garal-red:#ef0000;
}
.garal-soft-surface,
.has-light-background-color,
.has-surface-background-color{
  background-color: var(--garal-soft-gray) !important;
}
.garal-kicker{letter-spacing:.12em;text-transform:uppercase}
.garal-service-card{
  height:100%;
  border:1px solid var(--garal-outline);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.garal-service-card:hover{
  transform:translateY(-3px);
  border-color:#c9c9c9;
  box-shadow:0 20px 40px rgba(0,0,0,.08);
}
.garal-service-card .wp-block-heading{margin-top:18px;margin-bottom:10px}
.garal-service-card p{margin-top:0;color:var(--garal-dark)}
.garal-service-placeholder{display:none !important}
.garal-icon-badge{
  width:64px;
  height:64px;
  min-width:64px;
  border-radius:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#ffffff;
  border:1px solid var(--garal-outline);
  box-shadow:0 10px 24px rgba(0,0,0,.06);
  color:var(--garal-blue);
}
.garal-icon-badge svg{width:28px;height:28px;display:block;stroke:currentColor}
.garal-service-card .garal-icon-badge{margin-bottom:6px}
@media (max-width: 781px){
  .garal-service-card{
    padding-top:var(--wp--preset--spacing--small) !important;
    padding-right:var(--wp--preset--spacing--small) !important;
    padding-bottom:var(--wp--preset--spacing--small) !important;
    padding-left:var(--wp--preset--spacing--small) !important;
  }
  .garal-icon-badge{width:58px;height:58px;min-width:58px;border-radius:16px}
  .garal-service-card .wp-block-heading{font-size:1.2rem !important}
}

/* ===== BLOQUE SOLICITUD DE PROPUESTA ===== */

.garal-propuesta-wrap {
  max-width: 1100px;
  margin: 0 auto;
  padding: 20px 0;
}

.garal-propuesta-card {
  background: #ffffff;
  border: 1px solid rgba(0, 0, 0, 0.06);
  border-radius: 22px;
  padding: 38px 34px;
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.08);
}

.garal-propuesta-head {
  margin-bottom: 28px;
}

.garal-propuesta-head .garal-eyebrow {
  display: inline-block;
  margin-bottom: 10px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #004aad;
}

.garal-propuesta-head h2 {
  margin: 0 0 12px;
}

.garal-propuesta-head p {
  margin: 0;
  max-width: 760px;
  color: #545454;
  line-height: 1.8;
}

/* ===== FORMULARIO ===== */

.garal-form {
  max-width: 100%;
}

.garal-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 24px;
  row-gap: 22px;
  align-items: start;
}

.garal-field {
  display: flex;
  flex-direction: column;
  gap: 9px;
}

.garal-full {
  grid-column: 1 / -1;
}

.garal-form label {
  display: block;
  margin: 0;
  font-size: 14px;
  font-weight: 600;
  color: #1f1f1f;
  line-height: 1.7;
}

/* todos los campos alineados y con mismo tamaño visual */
.garal-form input,
.garal-form select,
.garal-form textarea {
  width: 100%;
  min-height: 56px;
  padding: 15px 18px;
  border: 1px solid #d9d9d9;
  border-radius: 12px;
  background: #f5f5f5;
  color: #1f1f1f;
  font-size: 15px;
  font-family: inherit;
  line-height: 1.9; /* +0.5 aprox respecto al aspecto anterior */
  box-sizing: border-box;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
  appearance: none;
  -webkit-appearance: none;
}

/* el select suele quedar más bajo visualmente: lo igualamos */
.garal-form select {
  padding-right: 42px;
  background-image:
    linear-gradient(45deg, transparent 50%, #545454 50%),
    linear-gradient(135deg, #545454 50%, transparent 50%);
  background-position:
    calc(100% - 20px) calc(50% - 3px),
    calc(100% - 14px) calc(50% - 3px);
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
}

/* textarea más amplio pero alineado arriba */
.garal-form textarea {
  min-height: 180px;
  resize: vertical;
  vertical-align: top;
}

.garal-field-message {
  align-items: stretch;
}

.garal-field-message label {
  align-self: flex-start;
}

.garal-field-message textarea::placeholder {
  vertical-align: top;
}

/* foco */
.garal-form input:focus,
.garal-form select:focus,
.garal-form textarea:focus {
  outline: none;
  border-color: #004aad;
  background: #ffffff;
  box-shadow: 0 0 0 3px rgba(0, 74, 173, 0.10);
}

/* botón con estilo coherente al resto */
.garal-form-actions {
  margin-top: 28px;
}

.garal-submit.wp-block-button__link,
.garal-submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 14px 28px;
  border: none;
  border-radius: 999px;
  background: #004aad;
  color: #ffffff;
  font-weight: 600;
  font-size: 15px;
  text-decoration: none;
  cursor: pointer;
  box-shadow: 0 12px 24px rgba(0, 74, 173, 0.20);
  transition: transform 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
}

.garal-submit.wp-block-button__link:hover,
.garal-submit:hover {
  background: #ef0000;
  color: #ffffff;
  transform: translateY(-1px);
  box-shadow: 0 14px 28px rgba(239, 0, 0, 0.18);
}

/* responsive */
@media (max-width: 781px) {
  .garal-propuesta-card {
    padding: 28px 20px;
    border-radius: 18px;
  }

  .garal-grid {
    grid-template-columns: 1fr;
    column-gap: 0;
    row-gap: 18px;
  }

  .garal-form input,
  .garal-form select,
  .garal-form textarea {
    min-height: 54px;
  }

  .garal-form textarea {
    min-height: 160px;
  }
}