body.page-id-108 {
  --g:#b18a43;
  --gd:#8d692b;
  --ink:#201f1c;
  --muted:#6e6b64;
  --soft:#f8f6f1;
  --content-max:1760px;
  --footer-content-max:2200px;
  font:14px Arial,Helvetica,sans-serif;
  color:var(--ink);
  width:100%;
  overflow-x:clip
}

body.page-id-108 * {
  box-sizing:border-box
}

body.page-id-108 a {
  color:inherit
}


body.page-id-108 .head {
  background:#fff;
  border-bottom:1px solid #eee9df;
  padding:12px clamp(18px,4vw,64px)
}

body.page-id-108 .headin {
  max-width:1240px;
  margin:auto;
  min-height:82px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px
}

body.page-id-108 .brand {
  display:flex;
  align-items:center;
  gap:9px;
  flex:0 0 auto;
  text-decoration:none;
  color:var(--ink)
}

body.page-id-108 .brand img {
  display:block;
  width:58px;
  height:58px;
  flex:0 0 58px;
  object-fit:contain
}

body.page-id-108 .brand-text {
  display:flex;
  flex-direction:column;
  gap:3px
}

body.page-id-108 .brand-name {
  font:700 19px/1 Georgia,"Times New Roman",serif;
  letter-spacing:.025em;
  color:var(--ink)
}

body.page-id-108 .brand-subtitle {
  font:500 8px/1.3 Arial,sans-serif;
  letter-spacing:.115em;
  color:#76613b;
  white-space:nowrap
}

body.page-id-108 .nav {
  display:flex;
  align-items:center;
  gap:clamp(12px,2vw,30px);
  font-size:13px;
  font-weight:600
}

body.page-id-108 .nav a,body.page-id-108 .nav span {
  text-decoration:none;
  white-space:nowrap
}

body.page-id-108 .nav a:hover {
  color:var(--gd)
}

body.page-id-108 .nav .pending {
  color:#77736b
}


body.page-id-108 .btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 18px;
  border:1px solid var(--g);
  border-radius:3px;
  background:var(--g);
  color:#fff!important;
  text-decoration:none;
  font-size:12px;
  font-weight:700
}

body.page-id-108 .btn:hover {
  background:var(--gd)
}

body.page-id-108 .btn-muted {
  background:#fff;
  color:#6f6b62!important;
  border:1px dashed #c5bdae;
  cursor:not-allowed
}


body.page-id-108 .hero {
  display:grid;
  grid-template-columns:1fr 1fr;
  background:#fff
}

body.page-id-108 .copy {
  padding:clamp(45px,7vw,88px) clamp(24px,6vw,84px);
  display:flex;
  flex-direction:column;
  justify-content:center
}

body.page-id-108 .eyebrow {
  align-self:flex-start;
  margin:0 0 16px;
  padding:7px 10px;
  background:#f5efe2;
  color:#795d2d;
  font-size:9px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase
}

body.page-id-108 h1,body.page-id-108 h2,body.page-id-108 h3,body.page-id-108 p {
  margin-top:0
}

body.page-id-108 h1 {
  max-width:620px;
  margin-bottom:18px;
  font:700 clamp(34px,4.3vw,58px)/1.04 Georgia,"Times New Roman",serif;
  letter-spacing:-.035em
}

body.page-id-108 h1 em {
  color:var(--g);
  font-style:normal
}

body.page-id-108 .lead {
  max-width:520px;
  margin-bottom:24px;
  color:#56534d;
  font-size:15px;
  line-height:1.75
}

body.page-id-108 .actions {
  display:flex;
  flex-wrap:wrap;
  gap:11px
}

body.page-id-108 .note {
  margin:14px 0 0;
  color:#827b6e;
  font-size:10px;
  line-height:1.5
}


body.page-id-108 .visual {
  min-height:430px;
  padding-left:14px;
  background:linear-gradient(145deg,#d6bc84,#98702d);
  clip-path:polygon(12% 0,100% 0,100% 100%,14% 100%,0 50%)
}

body.page-id-108 .visual img {
  display:block;
  width:100%;
  height:100%;
  min-height:430px;
  object-fit:cover;
  clip-path:polygon(12% 0,100% 0,100% 100%,14% 100%,0 50%)
}


body.page-id-108 .benefits {
  margin-top:clamp(18px,3vw,32px);
  padding:0;
  background:transparent;
  border:0
}

body.page-id-108 .benefit-grid {
  max-width:none;
  margin:0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(8px,1vw,14px)
}

body.page-id-108 .benefit {
  display:flex;
  min-width:0;
  align-items:center;
  gap:9px;
  padding:0
}

body.page-id-108 .benefit > div {
  min-width:0
}

body.page-id-108 .icon {
  width:38px;
  height:38px;
  flex:0 0 38px;
  color:var(--g)
}

body.page-id-108 .benefit h3 {
  margin:0 0 4px;
  font:700 14px/1.2 Georgia,serif
}

body.page-id-108 .benefit p {
  margin:0;
  color:var(--muted);
  font-size:11px;
  line-height:1.45
}


body.page-id-108 .about {
  padding:clamp(44px,7vw,82px) clamp(24px,6vw,88px);
  background:var(--soft)
}

body.page-id-108 .aboutin {
  max-width:1160px;
  margin:auto;
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:center;
  gap:clamp(28px,6vw,76px)
}

body.page-id-108 .kicker {
  margin-bottom:11px;
  color:var(--gd);
  font-size:10px;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-weight:700
}

body.page-id-108 h2 {
  max-width:500px;
  margin-bottom:15px;
  font:700 clamp(27px,3.2vw,42px)/1.12 Georgia,serif
}

body.page-id-108 .aboutcopy {
  max-width:520px;
  color:#5d5952;
  font-size:13px;
  line-height:1.75
}

body.page-id-108 .attrs {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-top:23px
}

body.page-id-108 .attr {
  border-top:1px solid #d8c9a8;
  padding-top:10px;
  color:#46423a;
  font-size:10px;
  line-height:1.4;
  font-weight:700
}

body.page-id-108 .attr span {
  font-weight:400;
  color:var(--muted)
}

body.page-id-108 figure {
  margin:0
}

body.page-id-108 .aboutimg {
  display:block;
  width:100%;
  height:340px;
  object-fit:cover
}

body.page-id-108 figcaption {
  margin-top:8px;
  color:#817b70;
  font-size:9px;
  line-height:1.4
}

body.page-id-108 .pending-dest {
  max-width:1160px;
  margin:26px auto 0;
  padding:11px 14px;
  border-left:3px solid var(--g);
  background:#fff;
  color:#6f685c;
  font-size:10px;
  line-height:1.5
}


@media(max-width:900px) {
  body.page-id-108 .headin {
  flex-wrap:wrap;
  gap:10px 16px
}

body.page-id-108 .nav {
  order:3;
  width:100%;
  justify-content:center;
  flex-wrap:wrap;
  padding:8px 0 2px
}

body.page-id-108 .copy {
  padding:42px 28px
}

body.page-id-108 .visual,body.page-id-108 .visual img {
  min-height:370px
}


}


@media(max-width:640px) {
  body.page-id-108 .head {
  padding:9px 16px
}

body.page-id-108 .headin {
  justify-content:space-between
}

body.page-id-108 .brand {
  gap:7px
}

body.page-id-108 .brand img {
  width:46px;
  height:46px;
  flex-basis:46px
}

body.page-id-108 .brand-name {
  font-size:16px
}

body.page-id-108 .brand-subtitle {
  font-size:6.5px;
  letter-spacing:.08em
}

body.page-id-108 .headerbtn {
  min-height:37px;
  padding:0 10px;
  font-size:10px
}

body.page-id-108 .nav {
  gap:9px 15px;
  font-size:11px
}

body.page-id-108 .hero {
  grid-template-columns:1fr
}

body.page-id-108 .copy {
  padding:42px 22px 32px
}

body.page-id-108 h1 {
  font-size:38px
}

body.page-id-108 .visual {
  min-height:260px;
  padding:10px 0 0;
  clip-path:none
}

body.page-id-108 .visual img {
  height:260px;
  min-height:260px;
  clip-path:none
}

body.page-id-108 .benefit-grid {
  grid-template-columns:1fr;
  gap:9px
}

body.page-id-108 .benefit {
  padding:5px 2px
}

body.page-id-108 .about {
  padding:42px 22px
}

body.page-id-108 .aboutin {
  grid-template-columns:1fr;
  gap:24px
}

body.page-id-108 .aboutimg {
  height:245px
}

body.page-id-108 .attrs {
  gap:8px
}

body.page-id-108 .attr {
  font-size:9px
}


}


body.page-id-108 .btn-outline {
  background:#fff;
  color:var(--gd)!important;
  border:1px solid #d8c9a8
}


body.page-id-108 .section {
  padding:clamp(52px,7vw,88px) clamp(22px,5vw,72px)
}

body.page-id-108 .section-inner {
  width:100%;
  max-width:var(--content-max);
  margin:0 auto
}

body.page-id-108 .section-heading {
  max-width:720px;
  margin:0 auto 34px;
  text-align:center
}

body.page-id-108 .section-heading .kicker {
  margin-bottom:10px
}

body.page-id-108 .section-heading h2 {
  margin:0 auto 14px
}

body.page-id-108 .section-lead {
  max-width:680px;
  margin:0 auto;
  color:var(--muted);
  font-size:14px;
  line-height:1.75
}


body.page-id-108 .company {
  background:#fff
}

body.page-id-108 .company-grid {
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:24px
}

body.page-id-108 .company-copy,body.page-id-108 .company-aside {
  padding:clamp(22px,3vw,34px);
  border:1px solid #eee8dc;
  background:#fff
}

body.page-id-108 .company-copy {
  border-top:3px solid var(--g)
}

body.page-id-108 .company-copy p {
  margin:0 0 13px;
  color:#56534d;
  font-size:14px;
  line-height:1.8
}

body.page-id-108 .company-aside {
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:var(--soft)
}

body.page-id-108 .company-aside strong {
  margin-bottom:9px;
  font:700 21px/1.2 Georgia,serif
}

body.page-id-108 .company-aside p {
  margin:0;
  color:var(--muted);
  font-size:12px;
  line-height:1.7
}

body.page-id-108 .market-tags {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:20px
}

body.page-id-108 .market-tags span {
  padding:8px 11px;
  border:1px solid #e3d7bd;
  color:#66512d;
  font-size:10px;
  font-weight:700
}


body.page-id-108 .services,body.page-id-108 .gallery {
  background:var(--soft)
}

body.page-id-108 .proposal-label {
  display:inline-flex;
  margin:0 auto 18px;
  padding:7px 10px;
  background:#f1e8d6;
  color:#73582b;
  font-size:9px;
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase
}

body.page-id-108 .service-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px
}

body.page-id-108 .service-card {
  min-height:208px;
  padding:22px 19px;
  border:1px solid #e9e3d8;
  background:#fff
}

body.page-id-108 .service-no {
  display:grid;
  width:34px;
  height:34px;
  place-items:center;
  margin-bottom:18px;
  border:1px solid #d9c59b;
  border-radius:50%;
  color:var(--gd);
  font:700 11px Georgia,serif
}

body.page-id-108 .service-card h3 {
  margin:0 0 9px;
  font:700 17px/1.2 Georgia,serif
}

body.page-id-108 .service-card p {
  margin:0;
  color:var(--muted);
  font-size:11px;
  line-height:1.65
}


body.page-id-108 .purpose {
  background:#24231f;
  color:#fff
}

body.page-id-108 .purpose .section-heading h2 {
  color:#fff
}

body.page-id-108 .purpose .section-lead {
  color:#d0ccc2
}

body.page-id-108 .purpose-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px
}

body.page-id-108 .purpose-card {
  padding:clamp(23px,3vw,34px);
  border:1px solid #514a3d;
  background:#2d2b26
}

body.page-id-108 .purpose-card .kicker {
  color:#d0ae6a
}

body.page-id-108 .purpose-card h3 {
  margin:0 0 13px;
  color:#fff;
  font:700 22px/1.2 Georgia,serif
}

body.page-id-108 .purpose-card p {
  margin:0;
  color:#e2dfd8;
  font-size:13px;
  line-height:1.8
}

body.page-id-108 .values {
  grid-column:1/-1;
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:9px;
  padding:19px 0 0
}

body.page-id-108 .values strong {
  margin-right:6px;
  color:#d0ae6a;
  font:700 12px Georgia,serif
}

body.page-id-108 .values span {
  padding:8px 11px;
  border:1px solid #605744;
  color:#fff;
  font-size:10px
}


body.page-id-108 .principle-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px
}

body.page-id-108 .principle {
  padding:22px 18px;
  border-top:2px solid var(--g);
  background:var(--soft)
}

body.page-id-108 .principle h3 {
  margin:0 0 8px;
  font:700 16px/1.25 Georgia,serif
}

body.page-id-108 .principle p {
  margin:0;
  color:var(--muted);
  font-size:11px;
  line-height:1.65
}


body.page-id-108 .gallery-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px
}

body.page-id-108 .gallery-card {
  overflow:hidden;
  background:#fff;
  border:1px solid #e9e3d8
}

body.page-id-108 .gallery-card img {
  display:block;
  width:100%;
  height:clamp(220px,27vw,340px);
  object-fit:cover
}

body.page-id-108 .gallery-caption {
  padding:16px 18px
}

body.page-id-108 .gallery-caption strong {
  display:block;
  margin-bottom:5px;
  font:700 16px Georgia,serif
}

body.page-id-108 .gallery-caption span {
  color:var(--muted);
  font-size:10px;
  line-height:1.5
}

body.page-id-108 .illustrative-note {
  margin:17px 0 0;
  color:#797368;
  text-align:center;
  font-size:10px
}


body.page-id-108 .contact-grid {
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:22px
}

body.page-id-108 .contact-panel,body.page-id-108 .form-preview {
  padding:clamp(22px,3vw,34px);
  border:1px solid #ebe5d9
}

body.page-id-108 .contact-panel {
  background:var(--soft)
}

body.page-id-108 .contact-panel h3,body.page-id-108 .form-preview h3 {
  margin:0 0 15px;
  font:700 21px Georgia,serif
}

body.page-id-108 .contact-list {
  display:grid;
  gap:13px
}

body.page-id-108 .contact-item {
  padding-bottom:12px;
  border-bottom:1px solid #e6dfd2
}

body.page-id-108 .contact-item:last-child {
  border:0
}

body.page-id-108 .contact-item small {
  display:block;
  margin-bottom:4px;
  color:var(--gd);
  font-size:9px;
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase
}

body.page-id-108 .contact-item a,body.page-id-108 .contact-item span {
  font-size:13px;
  line-height:1.5;
  text-decoration:none
}

body.page-id-108 .form-preview>p {
  margin:0 0 17px;
  color:var(--muted);
  font-size:10px;
  line-height:1.6
}

body.page-id-108 .form-fields {
  display:grid;
  gap:10px
}

body.page-id-108 .form-field label {
  display:block;
  margin-bottom:5px;
  color:#5d584e;
  font-size:10px;
  font-weight:700
}

body.page-id-108 .form-field input,body.page-id-108 .form-field textarea {
  display:block;
  width:100%;
  padding:10px 11px;
  border:1px solid #e5dfd5;
  background:#faf9f7;
  color:#777;
  font:11px Arial,sans-serif
}

body.page-id-108 .form-field textarea {
  height:74px;
  resize:none
}

body.page-id-108 .form-preview button {
  margin-top:13px;
  min-height:38px;
  padding:0 15px;
  border:0;
  background:#c7c2b8;
  color:#fff;
  font-size:10px;
  font-weight:700
}


body.page-id-108 .site-footer {
  width:100vw;
  max-width:none;
  margin-inline:calc(50% - 50vw);
  min-height:0;
  padding:24px clamp(18px,4vw,64px) 12px;
  background:#24231f;
  color:#fff
}

body.page-id-108 .footer-inner {
  width:100%;
  max-width:var(--footer-content-max);
  margin:auto;
  display:grid;
  grid-template-columns:1.2fr 1fr 1fr;
  gap:20px
}

body.page-id-108 .footer-brand {
  font:700 19px Georgia,serif
}

body.page-id-108 .footer-brand small {
  display:block;
  margin-top:6px;
  color:#d0ae6a;
  font:500 9px Arial,sans-serif;
  letter-spacing:.08em
}

body.page-id-108 .footer-col h3 {
  margin:0 0 12px;
  color:#d0ae6a;
  font:700 11px Arial,sans-serif;
  letter-spacing:.08em;
  text-transform:uppercase
}

body.page-id-108 .footer-col p {
  margin:0 0 7px;
  color:#e2dfd8;
  font-size:10px;
  line-height:1.6
}

body.page-id-108 .footer-links {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px
}

body.page-id-108 .footer-links a {
  color:#e2dfd8;
  font-size:10px;
  text-decoration:none
}

body.page-id-108 .footer-legal {
  width:100%;
  max-width:var(--footer-content-max);
  margin:17px auto 0;
  padding-top:10px;
  border-top:1px solid #514a3d;
  color:#bdb8ad;
  font-size:9px;
  line-height:1.6
}


@media(max-width:900px) {
  body.page-id-108 .service-grid,body.page-id-108 .principle-grid {
  grid-template-columns:repeat(2,minmax(0,1fr))
}

body.page-id-108 .company-grid,body.page-id-108 .contact-grid {
  grid-template-columns:1fr
}

body.page-id-108 .footer-inner {
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px 24px
}

body.page-id-108 .site-footer {
  padding-inline:clamp(18px,3vw,30px)
}

body.page-id-108 .footer-brand-col {
  grid-column:1/-1
}


}


@media(max-width:640px) {
  body.page-id-108 .section {
  padding:46px 22px
}

body.page-id-108 .section-heading {
  margin-bottom:26px
}

body.page-id-108 .section-lead {
  font-size:12px
}

body.page-id-108 .service-grid,body.page-id-108 .purpose-grid,body.page-id-108 .principle-grid,body.page-id-108 .gallery-grid {
  grid-template-columns:1fr
}

body.page-id-108 .service-card {
  min-height:0;
  padding:19px
}

body.page-id-108 .service-no {
  margin-bottom:12px
}

body.page-id-108 .purpose-card h3 {
  font-size:20px
}

body.page-id-108 .values {
  grid-column:auto;
  padding-top:9px
}

body.page-id-108 .gallery-card img {
  height:230px
}

body.page-id-108 .footer-inner {
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px 16px
}

body.page-id-108 .footer-brand-col {
  grid-column:1/-1
}

body.page-id-108 .footer-links {
  grid-template-columns:repeat(2,minmax(0,1fr))
}

body.page-id-108 .site-footer { padding:16px 16px 10px; }
body.page-id-108 .footer-inner,
body.page-id-108 .footer-col { min-width:0; }
body.page-id-108 .footer-col h3 { margin-bottom:8px; }
body.page-id-108 .footer-col p,
body.page-id-108 .footer-links a { overflow-wrap:anywhere; }
body.page-id-108 .footer-brand {
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:4px 8px;
  font:700 17px Georgia,serif;
}
body.page-id-108 .footer-brand small { margin-top:0; }
body.page-id-108 .footer-legal { margin-top:12px; padding-top:8px; font-size:9px; }

}

@media(max-width:360px) {
  body.page-id-108 .site-footer { padding:14px 10px 8px; }
  body.page-id-108 .footer-inner { grid-template-columns:minmax(0,1fr); gap:10px; }
  body.page-id-108 .footer-brand-col { grid-column:auto; }
}

body.page-id-108 .hero .visual img.hero-logistica {
  object-fit:cover;
  object-position:56% 50%
}


body.page-id-108 .about .aboutimg.imagen-nosotros {
  object-fit:cover;
  object-position:50% 50%
}


body.page-id-108 .purpose .purpose-image {
  display:block;
  width:100%;
  height:300px;
  margin:0 0 16px;
  border:1px solid #514a3d;
  object-fit:cover;
  object-position:50% 72%
}


body.page-id-108 .service-card .service-image {
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:3/2;
  margin:0 0 15px;
  object-fit:cover;
  object-position:50% 50%
}

body.page-id-108 .service-card .service-oportunidades {
  object-position:58% 50%
}


body.page-id-108 .gallery-card img.gallery-img {
  display:block;
  width:100%;
  height:clamp(220px,27vw,340px);
  object-fit:cover;
  object-position:50% 50%
}

body.page-id-108 .gallery-card img.gallery-terrestre {
  object-position:42% 50%
}

body.page-id-108 .gallery-card img.gallery-carga {
  object-position:60% 50%
}


@media(max-width:640px) {
  body.page-id-108 .hero .visual img.hero-logistica {
  object-position:55% 50%
}

body.page-id-108 .purpose .purpose-image {
  height:205px;
  object-position:45% 72%
}

body.page-id-108 .service-card .service-image {
  aspect-ratio:3/2
}

body.page-id-108 .gallery-card img.gallery-img {
  height:auto;
  aspect-ratio:3/2
}

body.page-id-108 .gallery-card img.gallery-terrestre {
  object-position:42% 50%
}


}



body.page-id-108 .brand img {
  filter:brightness(0) saturate(100%) invert(59%) sepia(43%) saturate(720%) hue-rotate(7deg) brightness(91%) contrast(86%)
}

body.page-id-108 [id] {
  scroll-margin-top:18px
}

body.page-id-108 .values-showcase {
  margin-top:22px;
  padding:clamp(22px,4vw,42px);
  background:#f8f6f1;
  color:var(--ink)
}

body.page-id-108 .values-heading {
  text-align:center;
  max-width:650px;
  margin:0 auto 22px
}

body.page-id-108 .values-heading .kicker {
  color:var(--gd)
}

body.page-id-108 .values-heading h3 {
  margin:0;
  font:700 clamp(20px,2.5vw,29px)/1.2 Georgia,serif;
  color:var(--ink)
}

body.page-id-108 .value-grid {
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:12px
}

body.page-id-108 .value-card {
  grid-column:span 2;
  min-height:185px;
  padding:19px 17px;
  background:#fff;
  border:1px solid #e8dfcd;
  border-top:2px solid var(--g);
  text-align:center
}

body.page-id-108 .value-card:nth-child(4) {
  grid-column:2/span 2
}

body.page-id-108 .value-card:nth-child(5) {
  grid-column:4/span 2
}

body.page-id-108 .value-icon {
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  margin:0 auto 12px;
  border:1px solid #e0d1ad;
  border-radius:50%;
  color:var(--gd);
  font:24px Georgia,serif
}

body.page-id-108 .value-card h3 {
  margin:0 0 8px;
  color:var(--ink);
  font:700 16px Georgia,serif
}

body.page-id-108 .value-card p {
  margin:0;
  color:#5d5952;
  font-size:11px;
  line-height:1.65
}

body.page-id-108 .editorial-note {
  margin:19px 0 0;
  color:#777064;
  text-align:center;
  font-size:10px;
  line-height:1.5
}

@media(max-width:900px) {
  body.page-id-108 .value-grid {
  grid-template-columns:repeat(2,minmax(0,1fr))
}

body.page-id-108 .value-card,body.page-id-108 .value-card:nth-child(4),body.page-id-108 .value-card:nth-child(5) {
  grid-column:auto
}


}

@media(max-width:640px) {
  body.page-id-108 .value-grid {
  grid-template-columns:1fr
}

body.page-id-108 .value-card {
  min-height:0;
  padding:19px
}

body.page-id-108 .values-showcase {
  margin-top:14px;
  padding:22px 16px
}


}



/* Ajustes locales para la sección Servicios y el formulario de la página 108. */
body.page-id-108 .service-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); }
body.page-id-108 .service-card { grid-column: span 2; }
body.page-id-108 .service-card:nth-child(4) { grid-column: 2 / span 2; }
body.page-id-108 .service-card:nth-child(5) { grid-column: 4 / span 2; }
body.page-id-108 .service-art { display: grid; min-height: 140px; aspect-ratio: 3 / 2; margin: 0 0 15px; place-items: center; background: linear-gradient(135deg, #f4efe4, #e8ddc5); color: #9a783d; }
body.page-id-108 .service-art svg { width: 54px; height: 54px; }
body.page-id-108 .values-showcase { grid-column: 1 / -1; }
body.page-id-108 .value-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
body.page-id-108 .value-card,body.page-id-108 .value-card:nth-child(4),body.page-id-108 .value-card:nth-child(5) { grid-column: auto; }
body.page-id-108 .form-field input,body.page-id-108 .form-field select,body.page-id-108 .form-field textarea { min-height: 42px; color: var(--ink); font: 13px Arial, sans-serif; }
body.page-id-108 .form-field textarea { min-height: 112px; resize: vertical; }
body.page-id-108 .form-field input:focus-visible,body.page-id-108 .form-field select:focus-visible,body.page-id-108 .form-field textarea:focus-visible,body.page-id-108 .consent-field input:focus-visible,body.page-id-108 .form-preview button:focus-visible { outline: 3px solid #c8a45e; outline-offset: 2px; }
body.page-id-108 .form-field [aria-invalid="true"] { border-color: #a33d32; background: #fff9f8; }
body.page-id-108 .field-error { display: block; margin-top: 4px; color: #9c3028; font-size: 12px; }
body.page-id-108 .field-error:empty { display: none; }
body.page-id-108 .consent-field { display: grid; grid-template-columns: 20px 1fr; gap: 10px; align-items: start; margin-top: 16px; color: #514d44; font-size: 12px; line-height: 1.55; }
body.page-id-108 .consent-field input { width: 18px; height: 18px; margin: 1px 0 0; accent-color: #9a783d; }
body.page-id-108 .consent-legal-note { display: block; margin-top: 5px; color: var(--muted); font-size: 11px; }
body.page-id-108 .form-preview button { cursor: pointer; background: var(--gd); color: #fff; font-size: 13px; }
body.page-id-108 .form-preview button:hover { background: #765b2b; }
body.page-id-108 .form-preview .form-status { margin: 12px 0 0; color: #6d5c37; font-size: 12px; }
body.page-id-108 .form-preview>p.form-disabled-note { margin: 0 0 17px; padding: 11px 13px; border-left: 3px solid var(--g); background: #f5efe2; color: #51452e; font-size: 12px; line-height: 1.55; }
body.page-id-108 .form-fields [disabled] { cursor: not-allowed; opacity: .68; }
body.page-id-108 .form-preview button:disabled { background: #8d887f; color: #fff; cursor: not-allowed; }
body.page-id-108 .chco-form-trap { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
body.page-id-108 .nosotros-group { display: block; width: 100%; }
@media (max-width: 900px) {
  body.page-id-108 .service-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.page-id-108 .service-card,body.page-id-108 .service-card:nth-child(4) { grid-column: auto; }
  body.page-id-108 .service-card:nth-child(5) { grid-column: 1 / -1; width: calc(50% - 7px); justify-self: center; }
  body.page-id-108 .value-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  body.page-id-108 .service-grid,body.page-id-108 .value-grid { grid-template-columns: 1fr; }
  body.page-id-108 .service-card,body.page-id-108 .service-card:nth-child(4),body.page-id-108 .service-card:nth-child(5),body.page-id-108 .value-card { grid-column: auto; width: auto; }
}

/* Elementor coloca el menú dentro de un widget cuya altura termina con el propio menú;
   por eso sticky queda limitado a ese widget. El script conserva su espacio en el flujo. */
body.page-id-108 .head {
  position: fixed;
  inset: 0 0 auto;
  z-index: 1000;
  width: 100%;
}
body.page-id-108 .head-spacer { display: block; width: 100%; }
body.page-id-108 #inicio,
body.page-id-108 #nosotros,
body.page-id-108 #servicios,
body.page-id-108 #galeria,
body.page-id-108 #contacto { scroll-margin-top: 0; }

/* Recorrido por paneles: cada sección se alinea como una vista, sin recortar el contenido que exceda la pantalla. */
@media (min-width: 901px) {
  html { scroll-behavior: smooth; scroll-snap-type: y proximity; scroll-padding-top: var(--chco-header-height, 112px); }
  body.page-id-108 #inicio,
  body.page-id-108 #nosotros,
  body.page-id-108 #servicios,
  body.page-id-108 #galeria,
  body.page-id-108 #contacto {
    scroll-snap-align: start;
  }
  /* El hero incluye los beneficios, como una sola primera pantalla bajo el encabezado. */
  body.page-id-108 #inicio { min-height: calc(100svh - var(--chco-header-height, 112px)); }
  body.page-id-108 .copy { padding-block: clamp(30px,5vh,58px); }
  body.page-id-108 .copy .benefits { width:100%; }
  body.page-id-108 .copy .benefits {
    margin-top:clamp(14px,2vw,20px);
    padding-block:5px;
    border-block:1px solid #eeeae2;
  }
  body.page-id-108 .benefit-grid { gap:clamp(7px,.8vw,10px); }
  body.page-id-108 .benefit { gap:9px; padding:4px 6px; }
  body.page-id-108 .benefit .icon { width:38px; height:38px; flex-basis:38px; }
  body.page-id-108 .benefit h3 { font-size:13px; line-height:1.2; }
  body.page-id-108 .benefit p { font-size:11px; line-height:1.4; }
  body.page-id-108 #nosotros,
  body.page-id-108 #servicios,
  body.page-id-108 #galeria,
  body.page-id-108 #contacto { min-height: calc(100svh - var(--chco-header-height, 112px)); }
  body.page-id-108 #nosotros,
  body.page-id-108 #servicios,
  body.page-id-108 #galeria,
  body.page-id-108 #contacto { display: flex; flex-direction: column; justify-content: center; align-items: stretch; }
  body.page-id-108 .aboutin,
  body.page-id-108 .section-inner { width: 100%; }
}

@media (min-width: 901px) and (max-height: 700px) {
  body.page-id-108 #inicio { min-height: calc(100svh - var(--chco-header-height, 112px)); }
  body.page-id-108 .copy { padding-block: 20px; }
  body.page-id-108 .eyebrow { margin-bottom: 10px; }
  body.page-id-108 h1 { font-size: clamp(30px, 3.4vw, 44px); margin-bottom: 12px; }
  body.page-id-108 .lead { margin-bottom: 16px; font-size: 14px; line-height: 1.55; }
  body.page-id-108 .note { margin-top: 10px; }
  body.page-id-108 .visual,
  body.page-id-108 .visual img { min-height: 320px; }
  body.page-id-108 .benefits { margin-top: 12px; padding-block: 4px; }
  body.page-id-108 .benefit h3 { font-size:12px; }
  body.page-id-108 .benefit p { font-size:10px; }
  body.page-id-108 .icon { width: 34px; height: 34px; flex-basis: 34px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; scroll-snap-type: none; }
}

/* Indicador accesible de la sección visible en el menú de la página 108. */
body.page-id-108 .nav a { position: relative; transition: color .18s ease; }
body.page-id-108 .nav a.is-active { color: var(--gd); }
body.page-id-108 .nav a.is-active::after {
  position: absolute;
  right: 0;
  bottom: -7px;
  left: 0;
  height: 2px;
  background: var(--g);
  content: "";
}
body.page-id-108 .nav a:focus-visible { outline: 2px solid var(--gd); outline-offset: 4px; }
@media (prefers-reduced-motion: reduce) {
  body.page-id-108 .nav a { transition: none; }
}

/* Superficies alternadas: Nosotros es una sola sección continua; el pie cierra compacto. */
body.page-id-108 .nosotros-group {
  min-height:100svh;
  background:#24231f;
  color:#fff;
}
body.page-id-108 .nosotros-group > .about,
body.page-id-108 .nosotros-group > .purpose { background:transparent; }
body.page-id-108 .nosotros-group > .about { padding-bottom:clamp(24px,3vw,38px); }
body.page-id-108 .nosotros-group > .purpose { padding-top:clamp(24px,3vw,36px); }
body.page-id-108 .nosotros-group .about h2 { color:#fff; }
body.page-id-108 .nosotros-group .aboutcopy { color:#e2dfd8; }
body.page-id-108 .nosotros-group .attr { border-color:#605744; color:#f1eee8; }
body.page-id-108 .nosotros-group .attr span,
body.page-id-108 .nosotros-group figcaption { color:#c9c3b8; }

body.page-id-108 .services,
body.page-id-108 .contact { background:#fff; }
body.page-id-108 .contact-panel { background:#fff; }

body.page-id-108 .gallery {
  background:#24231f;
  color:#fff;
}
body.page-id-108 .gallery .section-heading h2,
body.page-id-108 .gallery .gallery-caption strong { color:#fff; }
body.page-id-108 .gallery .section-lead,
body.page-id-108 .gallery .gallery-caption span,
body.page-id-108 .gallery .illustrative-note { color:#d0ccc2; }
body.page-id-108 .gallery .gallery-card {
  background:#2d2b26;
  border-color:#514a3d;
}

/* La galería ahora reúne razones de colaboración y escenas del sector. */
body.page-id-108 .why-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin:0 auto clamp(32px,4vw,48px);
}
body.page-id-108 .why-card {
  padding:16px 16px 18px;
  border-top:2px solid var(--g);
  background:#2d2b26;
}
body.page-id-108 .why-no {
  display:block;
  margin-bottom:13px;
  color:#d0ae6a;
  font:700 11px Georgia,serif;
  letter-spacing:.08em;
}
body.page-id-108 .why-card h3 {
  margin:0 0 8px;
  color:#fff;
  font:700 16px/1.2 Georgia,serif;
}
body.page-id-108 .why-card p {
  margin:0;
  color:#d0ccc2;
  font-size:11px;
  line-height:1.6;
}
body.page-id-108 .gallery-subheading {
  margin:0 auto 22px;
}
body.page-id-108 .gallery-subheading h3 {
  margin:0 auto 12px;
  color:#fff;
  font:700 clamp(21px,2.4vw,30px)/1.15 Georgia,serif;
}
body.page-id-108 .gallery-subheading .section-lead { font-size:12px; }
body.page-id-108 .gallery-grid {
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
body.page-id-108 .gallery-card img { height:clamp(140px,14vw,185px); }
body.page-id-108 .gallery-caption { padding:11px 12px; }
body.page-id-108 .gallery-caption strong { font-size:13px; }

@media (max-width:900px) {
  body.page-id-108 .why-grid,
  body.page-id-108 .gallery-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body.page-id-108 .gallery-card img { height:clamp(190px,28vw,250px); }
}
@media (max-width:640px) {
  body.page-id-108 .why-grid,
  body.page-id-108 .gallery-grid { grid-template-columns:1fr; }
  body.page-id-108 .gallery-card img { height:230px; }
}

/* Historia, misión, visión y valores: limitado a la página de inicio 108. */
body.page-id-108 .history-section {
  padding-block:clamp(46px,6vw,72px);
  background:#24231f;
  color:#fff;
}
body.page-id-108 .history-inner { width:100%; }
body.page-id-108 .history-heading { margin-bottom:clamp(24px,3vw,38px); }
body.page-id-108 .history-heading .kicker,
body.page-id-108 .history-copy .kicker { color:#d0ae6a; }
body.page-id-108 .history-heading h2 {
  margin:0 auto;
  color:#fff;
  font:700 clamp(32px,4vw,48px)/1.12 Georgia,"Times New Roman",serif;
}
body.page-id-108 .history-layout {
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
  align-items:center;
  gap:clamp(26px,5vw,64px);
}
body.page-id-108 .history-copy { min-width:0; max-width:660px; }
body.page-id-108 .history-copy .kicker {
  margin-bottom:12px;
  font-size:10px;
  font-weight:700;
  letter-spacing:.13em;
  text-transform:uppercase;
}
body.page-id-108 .history-copy h3 {
  margin:0 0 17px;
  color:#fff;
  font:700 clamp(26px,3vw,38px)/1.15 Georgia,"Times New Roman",serif;
}
body.page-id-108 .history-copy p:not(.kicker) {
  margin:0 0 13px;
  color:#e2dfd8;
  font-size:clamp(13px,1.15vw,15px);
  line-height:1.75;
}
body.page-id-108 .history-photo {
  min-width:0;
  margin:0;
  overflow:hidden;
  border:1px solid #605744;
  background:#2d2b26;
}
body.page-id-108 .history-photo-image {
  display:block;
  width:100%;
  aspect-ratio:3 / 2;
  object-fit:cover;
  object-position:center 56%;
}
body.page-id-108 .history-photo figcaption {
  padding:10px 13px;
  color:#c9c3b8;
  font-size:10px;
}
body.page-id-108 .history-purpose { margin-top:clamp(34px,4vw,52px); }
body.page-id-108 .history-block-title {
  margin:0 auto 20px;
  color:#fff;
  text-align:center;
  font:700 clamp(23px,2.7vw,32px)/1.2 Georgia,"Times New Roman",serif;
}
body.page-id-108 .mission-vision-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:stretch;
  gap:16px;
}
body.page-id-108 .mission-vision-card {
  display:flex;
  min-width:0;
  height:100%;
  flex-direction:column;
  padding:clamp(22px,3vw,32px);
  border:1px solid #514a3d;
  border-top:2px solid var(--g);
  background:#2d2b26;
}
body.page-id-108 .mission-vision-card h4 {
  margin:0 0 12px;
  color:#d0ae6a;
  font:700 18px/1.2 Georgia,"Times New Roman",serif;
}
body.page-id-108 .mission-vision-card p {
  margin:0;
  color:#e2dfd8;
  font-size:13px;
  line-height:1.75;
}
body.page-id-108 .history-values {
  margin-top:clamp(34px,4vw,52px);
  padding:clamp(22px,3.5vw,38px);
  background:#f8f6f1;
  color:var(--ink);
}
body.page-id-108 .history-values .values-heading { margin-bottom:22px; }
body.page-id-108 .history-values .values-heading .kicker { color:var(--gd); }
body.page-id-108 .history-values .values-heading h3 { color:var(--ink); }
body.page-id-108 .history-values .value-grid {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  align-items:stretch;
  gap:13px;
}
body.page-id-108 .history-values .value-card {
  min-width:0;
  min-height:210px;
  padding:20px 15px;
  border:1px solid #e5dcc7;
  border-top:2px solid var(--g);
  background:#fff;
  text-align:center;
}
body.page-id-108 .history-values .value-icon {
  display:grid;
  width:48px;
  height:48px;
  place-items:center;
  margin:0 auto 13px;
  border:1px solid #d8c9a8;
  border-radius:50%;
  color:var(--gd);
  font-size:0;
}
body.page-id-108 .history-values .value-icon svg {
  display:block;
  width:23px;
  height:23px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
body.page-id-108 .history-values .value-card h3 {
  margin:0 0 8px;
  color:var(--ink);
  font:700 15px/1.25 Georgia,"Times New Roman",serif;
}
body.page-id-108 .history-values .value-card p {
  margin:0;
  color:#5d5952;
  font-size:11px;
  line-height:1.6;
}
body.page-id-108 .history-values .editorial-note {
  margin:17px 0 0;
  color:#797368;
  text-align:center;
  font-size:10px;
  line-height:1.5;
}
body.page-id-108 .contact-item--whatsapp small,
body.page-id-108 .contact-item--whatsapp a { color:var(--gd); font-weight:700; }
body.page-id-108 .contact-item--office small,
body.page-id-108 .contact-item--office a { color:var(--ink); }

@media (max-width:900px) {
  body.page-id-108 .history-layout { grid-template-columns:minmax(0,1fr) minmax(0,.9fr); gap:24px; }
  body.page-id-108 .history-values .value-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:700px) {
  body.page-id-108 .history-section { padding:42px 20px; }
  body.page-id-108 .history-heading { margin-bottom:24px; }
  body.page-id-108 .history-layout,
  body.page-id-108 .mission-vision-grid { grid-template-columns:minmax(0,1fr); }
  body.page-id-108 .history-layout { gap:22px; }
  body.page-id-108 .history-photo-image { aspect-ratio:16 / 10; }
  body.page-id-108 .history-purpose,
  body.page-id-108 .history-values { margin-top:30px; }
  body.page-id-108 .history-values { padding:22px 16px; }
  body.page-id-108 .history-values .value-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  body.page-id-108 .history-values .value-card { min-height:190px; padding:18px 12px; }
}
@media (max-width:420px) {
  body.page-id-108 .history-values .value-grid { grid-template-columns:minmax(0,1fr); }
  body.page-id-108 .history-values .value-card { min-height:0; }
}

/* Mantén HOME legible cuando la columna de texto deja poco ancho a los beneficios. */
@media (min-width:641px) and (max-width:1200px) {
  body.page-id-108 .benefit-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body.page-id-108 .benefit,
  body.page-id-108 .benefit > div { min-width:0; }
}
