/* BLENDA · capa comercial. Conserva las bases visuales y el sistema responsivo original. */
:root { --ink:#292b2b; --accent:#b65e29; --cream:#f8f4ed; --cool:#e9f2ef; --line:#e8ded1; }
body {overflow-x:clip}
.site-shell {overflow:clip}
.container {width:min(1220px,calc(100% - 80px))}
.site-header {min-height:88px;position:relative;z-index:30}
.header-inner {min-height:88px;gap:18px}
.brand {width:240px}
.desktop-nav {gap:clamp(12px,1.7vw,24px)}
.nav-link {font-size:13.5px;font-weight:600;letter-spacing:-.1px}
.header-cta {font-size:13px!important;min-height:44px!important;padding:12px 15px!important;gap:8px}
.button {font-size:16px;min-height:52px;border-radius:8px;font-weight:650;padding:13px 23px}
.button:hover {transform:translateY(-1px)}
.section {scroll-margin-top:28px}
.section-title {font-size:clamp(30px,3.5vw,48px);letter-spacing:-1.8px;line-height:1.12}
.section-description {font-size:17px;line-height:1.6;max-width:670px}
.eyebrow {font-size:12px;letter-spacing:2.1px;margin-bottom:17px}
.section-heading {margin-bottom:30px}
.centered {text-align:center}
.centered .section-description {margin:12px auto 0}
.commercial-hero {padding:50px 0 4px;background:radial-gradient(ellipse at 50% 0%,#fff,#f9f6f0 75%)}
.commercial-hero .hero-eyebrow {font-size:12px;margin:0 0 19px;letter-spacing:2.5px}
.commercial-hero .hero-title {font-size:clamp(43px,5.3vw,78px);max-width:1060px;font-weight:750;letter-spacing:-3.3px;line-height:1.05}
.commercial-hero .hero-description {max-width:800px;font-size:clamp(17px,1.55vw,21px);letter-spacing:-.25px;line-height:1.6;margin:23px auto 27px}
.commercial-hero .hero-actions {gap:12px;margin-bottom:33px}
.commercial-hero .hero-media {border-radius:12px 12px 3px 3px;max-height:438px}
.commercial-hero .hero-reference-image {aspect-ratio:3.1/1;object-position:center 24%}
.commercial-hero .hero-disciplines {pointer-events:none}
.commercial-hero .hero-discipline {font-size:14px}
.commercial-hero .trust-strip {padding:24px 0 21px;max-width:1050px;margin:auto}
.commercial-hero .trust-item {font-size:14px;font-weight:550;gap:10px}
.commercial-hero .trust-item .icon {height:27px;width:27px}
.why-section {padding:90px 0 80px;background:#fff}
.why-layout {display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:clamp(40px,8vw,130px)}
.why-layout .section-title {max-width:440px}
.large-lead {font-size:clamp(18px,2vw,23px);line-height:1.58;letter-spacing:-.5px;color:#43484a}
.why-specialties {display:flex;flex-wrap:wrap;gap:9px;margin-top:28px}
.why-specialties span {font-size:12px;font-weight:650;padding:9px 13px;background:#f5f3ef;border:1px solid var(--line);border-radius:40px;color:#545553}
.category-section {padding:92px 0 100px;background:#f6f2eb}
.category-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.category-tile {position:relative;display:flex;flex-direction:column;min-height:323px;padding:27px 24px;border-radius:11px;background:#fff;border:1px solid #eae0d3;box-shadow:0 12px 34px #634b3510;transition:transform .2s,border-color .2s}
.category-tile:hover {transform:translateY(-4px);border-color:#d1b79e}
.category-topline {display:flex;justify-content:space-between;align-items:center;margin-bottom:38px;color:var(--copper-dark)}
.category-number {font-weight:750;font-size:13px;letter-spacing:1.4px}
.category-glyph {display:grid;place-items:center;width:42px;height:42px;border:1px solid #e9d5c3;border-radius:50%;font-size:22px}
.category-tile h3 {font-size:20px;font-weight:750;line-height:1.26;letter-spacing:-.65px;max-width:240px;margin-bottom:12px}
.category-tile p {font-size:14px;line-height:1.57;color:#66706e;margin-bottom:22px}
.category-tile a {color:var(--copper-dark);font-size:13px;font-weight:750;margin-top:auto;display:flex;justify-content:space-between;gap:8px}
.category-procesos {border-top:3px solid #368d84}.category-contratistas {border-top:3px solid #8a6f57}.category-asesoria {border-top:3px solid #666b74}.category-digital {border-top:3px solid #ba652f}
.featured-section {padding:93px 0 89px;background:white}
.featured-grid {display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px}
.feature-item {grid-column:span 4;display:grid;grid-template-columns:38px 1fr;gap:12px;min-height:228px;padding:26px 20px 22px;border:1px solid var(--line);border-radius:9px;background:#fdfbf8}
.feature-item:nth-child(4),.feature-item:nth-child(5) {grid-column:span 6}
.feature-index {color:var(--accent);font-size:14px;font-weight:780}
.feature-label {font-size:11px;letter-spacing:1px;text-transform:uppercase;color:#8b6d55;font-weight:750;margin-bottom:13px}
.feature-item h3 {font-size:21px;line-height:1.22;letter-spacing:-.6px;margin-bottom:12px}
.feature-item p:not(.feature-label) {font-size:14px;line-height:1.6;color:#636966;margin-bottom:20px}
.feature-item a {display:inline-block;font-size:13px;font-weight:750;color:var(--copper-dark);margin-top:auto}
.section-more {text-align:center;margin-top:35px}
.contractor-showcase {padding:82px 0;background:#2e3231;color:white}
.contractor-layout {display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}
.contractor-copy .eyebrow {color:#e9b17a}
.contractor-copy h2 {font-size:clamp(33px,3.1vw,47px);line-height:1.12;letter-spacing:-1.9px;font-weight:720;margin-bottom:22px}
.contractor-copy h2 span {color:#e7b68c}
.contractor-copy p:not(.eyebrow) {font-size:17px;line-height:1.7;color:#d7dcd9;max-width:550px}
.contractor-actions {display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-top:28px}
.contractor-actions .button {font-size:14px}
.underlined-link {font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:5px}
.contractor-image-panel {position:relative;border-radius:12px;overflow:hidden;border:1px solid #868b8590}
.contractor-image-panel img {width:100%;min-height:420px;object-fit:cover}
.contractor-image-note {position:absolute;left:17px;bottom:17px;right:17px;display:grid;gap:8px;padding:20px;border-radius:8px;background:#222c2bdb;backdrop-filter:blur(8px)}
.contractor-image-note span {font-size:10px;letter-spacing:1.9px;color:#e2bb92;font-weight:800}
.contractor-image-note strong {font-size:16px;font-weight:650}
.process {padding:90px 0 85px}
.process .section-heading {margin-bottom:27px}
.process .process-title {font-size:18px}
.process .process-description {font-size:15px;padding:0 12px}
.team-section {padding:95px 0 103px;background:#eee9e1}
.team-heading {max-width:760px;margin-bottom:32px}
.team-heading p:not(.eyebrow) {font-size:18px;line-height:1.6;color:#626862;margin-top:14px}
.team-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.team-grid article {background:#fff;border:1px solid #e7dcd0;border-radius:10px;padding:27px;min-height:178px}
.team-grid article span {font-size:10px;letter-spacing:1.6px;color:var(--copper-dark);font-weight:780}
.team-grid article h3 {font-size:20px;margin:20px 0 12px;letter-spacing:-.6px}
.team-grid article p {font-size:14px;line-height:1.6;color:#5e6464}
.faq-section {background:#fff;padding:96px 0}
.faq-layout {display:grid;grid-template-columns:.75fr 1.25fr;gap:90px}
.faq-items {border-top:1px solid var(--line)}
.faq-items details {border-bottom:1px solid var(--line);padding:0 3px}
.faq-items summary {display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;font-weight:700;font-size:17px;line-height:1.4;cursor:pointer;list-style:none}
.faq-items summary::-webkit-details-marker {display:none}
.faq-items summary span {font-size:25px;font-weight:350;color:var(--copper-dark)}
.faq-items details[open] summary span {transform:rotate(45deg)}
.faq-items details p {font-size:15px;line-height:1.7;color:#646969;max-width:640px;padding:0 0 22px}
.contact {padding:88px 0 93px}
.contact-layout {grid-template-columns:38% minmax(0,1fr);align-items:start;gap:65px}
.contact-copy {padding-top:35px}
.contact-title {font-size:clamp(36px,4vw,53px);line-height:1.1;letter-spacing:-2px}
.contact-description {font-size:19px;line-height:1.6}
.contact-form {width:100%}
.form-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.form-field {min-width:0}
.form-field.field-full,.dynamic-questions {grid-column:1/-1}
.form-label {font-size:13px;font-weight:700}
.form-control {min-width:0;width:100%}
.form-control:focus {outline-offset:1px}
.dynamic-questions {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:6px;padding:17px;border-radius:9px;background:#eee7db;border:1px solid #e0d2c0}
.dynamic-heading {grid-column:1/-1;color:#4b5250;font-size:14px;font-weight:720;margin:0}
.dynamic-questions .form-control {background:#fff}
.submit-button {font-size:16px;max-width:100%}
.closing {padding:45px 0}
.closing-copy {font-size:26px;line-height:1.25}
.footer-links {flex-wrap:wrap;gap:17px;font-size:14px}
/* Catalog, individual services and industry landing */
.commercial-interior-hero {padding:70px 0 75px}
.commercial-interior-hero .seo-title {font-size:clamp(37px,4.5vw,63px);max-width:930px;margin:0 auto 20px;letter-spacing:-2.6px;line-height:1.12}
.commercial-interior-hero .seo-lead {max-width:820px;font-size:19px;line-height:1.6}
.commercial-interior-hero .seo-hero-actions {margin-top:26px;justify-content:center}
.catalog-jump {background:#fff;border-bottom:1px solid var(--line);position:relative}
.catalog-jump>.container {display:flex;flex-wrap:wrap;gap:9px;padding-top:13px;padding-bottom:13px}
.catalog-jump a {font-size:13px;color:#655f56;font-weight:700;padding:10px 16px;border:1px solid var(--line);border-radius:30px;transition:background .2s}
.catalog-jump a:hover {background:var(--cream)}
.catalog-group {padding:82px 0;scroll-margin-top:20px}
.catalog-group:nth-of-type(2n) {background:#f6f2eb}
.catalog-group-header {display:flex;justify-content:space-between;align-items:end;gap:18px;margin-bottom:30px}
.catalog-group-header h2 {font-size:clamp(31px,3.5vw,44px);line-height:1.1;letter-spacing:-1.3px;margin-bottom:12px}
.catalog-group-header p:not(.eyebrow) {color:#626969;font-size:17px;line-height:1.55}
.catalog-group-header>a {font-size:13px;color:var(--copper-dark);font-weight:750;white-space:nowrap;text-decoration:underline;text-underline-offset:4px}
.catalog-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.commercial-service-card {background:#fff;border:1px solid var(--line);border-top:3px solid var(--copper);border-radius:8px;padding:26px;display:flex;flex-direction:column;min-width:0;min-height:335px;transition:transform .2s,border-color .2s}
.commercial-service-card[data-group="procesos"] {border-top-color:var(--turquoise-dark)}
.commercial-service-card[data-group="contratistas"] {border-top-color:var(--earth)}
.commercial-service-card[data-group="asesoria"] {border-top-color:#686e75}
.commercial-service-card:hover {transform:translateY(-3px);border-color:#cab399}
.service-kicker {display:block;font-size:11px;text-transform:uppercase;letter-spacing:1.8px;color:var(--copper-dark);font-weight:750;margin-bottom:14px}
.commercial-service-card h3 {font-size:23px;letter-spacing:-.7px;line-height:1.22;margin-bottom:14px}
.commercial-service-card h3 a:hover {color:var(--copper-dark)}
.commercial-service-card p {font-size:14px;line-height:1.57;color:#626969;margin:0 0 9px}
.commercial-service-card .service-problem {font-weight:700;color:#404646}
.service-card-foot {border-top:1px solid var(--line);padding-top:18px;margin-top:auto;display:flex;justify-content:space-between;gap:14px;align-items:center}
.service-card-foot span {font-size:11px;line-height:1.3;color:#64696a}
.service-card-foot a {font-size:13px;font-weight:750;color:var(--copper-dark);white-space:nowrap}
.catalog-final {background:#2e3231;text-align:center;color:#fff;padding:75px 0}
.catalog-final h2 {font-size:clamp(28px,3.5vw,44px);letter-spacing:-1.5px;line-height:1.2}
.catalog-final p {max-width:680px;color:#e4e7e2;font-size:16px;line-height:1.6;margin:13px auto 25px}
.service-detail-section {padding:92px 0 103px;background:#fff}
.service-detail-grid {display:grid;grid-template-columns:.77fr 1.23fr;gap:95px}
.detail-aside h2 {font-size:clamp(27px,2.9vw,38px);line-height:1.25;letter-spacing:-1.1px;max-width:425px}
.detail-tag {display:inline-block;font-size:12px;font-weight:700;padding:11px 15px;background:#eee6da;border-radius:30px;margin-top:24px;color:#755635}
.service-detail-main h2 {font-size:27px;letter-spacing:-.8px;line-height:1.2;margin-bottom:12px}
.service-detail-main>p {font-size:17px;color:#626868;line-height:1.65;margin-bottom:28px}
.service-detail-main h3 {font-size:20px;margin-bottom:15px}
.detail-deliverables {display:grid;gap:12px;margin-bottom:34px}
.detail-deliverables li {position:relative;padding:15px 16px 15px 42px;border:1px solid var(--line);background:#fdfbf7;border-radius:7px;font-size:15px;line-height:1.4}
.detail-deliverables li:before {content:'✓';position:absolute;left:16px;top:14px;color:var(--turquoise-dark);font-weight:900}
.detail-metadata {display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:0 0 24px}
.detail-metadata>div {border-top:2px solid #d2b695;padding-top:14px}
.detail-metadata span {display:block;color:#68706d;font-size:12px;margin-bottom:8px}
.detail-metadata strong {display:block;font-size:15px;line-height:1.5}
.detail-note {padding:19px 21px;background:#f1ede6;border-radius:8px;margin:0 0 20px}
.detail-note strong {font-size:14px}
.detail-note p {font-size:14px;line-height:1.55;margin-top:5px;color:#626866}
.service-detail-main>a:not(.button) {display:block;text-decoration:underline;color:var(--copper-dark);font-size:14px;font-weight:700;margin:0 0 22px}
.related-services {padding:80px 0 95px;background:#f6f2eb}
.contractor-intro .seo-title {max-width:1080px}
.contractor-context {padding:88px 0}
.context-layout {display:grid;grid-template-columns:.9fr 1.1fr;gap:90px}
.context-layout p {font-size:17px;line-height:1.7;color:#555d5c;margin-bottom:20px}
.context-layout .context-hint {font-size:13px;padding:16px 18px;background:#f6f1e9;border-left:3px solid var(--copper);border-radius:3px}
.contractor-offers {background:#f6f2eb;padding:85px 0}
.contract-offers-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.contract-offer {background:#fff;border:1px solid var(--line);padding:28px;border-radius:10px;display:flex;flex-direction:column}
.contract-offer h3 {font-size:22px;line-height:1.2;margin-bottom:13px}
.contract-offer p {font-size:14px;line-height:1.6;color:#606869;margin-bottom:15px}
.contract-offer ul {list-style:none;display:grid;gap:13px;margin-bottom:20px}
.contract-offer li {font-size:14px;line-height:1.5;padding-left:17px;position:relative}
.contract-offer li:before {content:'•';color:var(--copper);font-size:17px;position:absolute;left:0}
.contract-offer a {margin-top:auto;color:var(--copper-dark);font-weight:750;font-size:13px}
.contractor-example {padding:95px 0}
.contractor-example-layout {display:grid;grid-template-columns:.95fr 1.05fr;gap:70px;align-items:center}
.contractor-example-layout img {width:100%;border-radius:10px}
.contractor-example-layout ol {list-style:decimal;padding-left:23px;margin:24px 0;display:grid;gap:9px}
.contractor-example-layout li {font-size:15px;line-height:1.5;color:#515959}
.contractor-example-layout p:not(.eyebrow) {font-size:14px;color:#555e5a;line-height:1.6;margin-bottom:22px}
@media (max-width:1250px) {
 .desktop-nav {gap:13px}
 .header-inner .brand {width:215px}
 .nav-link {font-size:12px}
 .header-cta {font-size:12px!important;padding-inline:10px!important}
}
@media (max-width:1023px) {
 .site-header {min-height:74px}.header-inner {min-height:74px}.header-inner .brand {width:245px}
 .desktop-nav,.header-cta {display:none!important}
 .menu-toggle {display:flex;margin-left:auto}
 .mobile-nav:not([hidden]) {display:flex;flex-direction:column;padding:14px 32px 24px;border-top:1px solid var(--line);background:#fff;box-shadow:0 14px 20px #292b2b17}
 .mobile-nav-link {padding:12px 8px;font-weight:600;font-size:15px}
 .mobile-nav .button {align-self:flex-start;font-size:14px;min-height:45px}
 .category-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
 .category-tile {min-height:265px}
 .contractor-layout,.service-detail-grid {gap:34px}
 .faq-layout {gap:35px}
 .team-grid,.catalog-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
 .contract-offers-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:720px) {
 .container,.hero .container,.commercial-hero .container {width:calc(100% - 36px)}
 .site-header .header-inner {gap:10px}
 .header-inner .brand {width:190px}
 .commercial-hero {padding-top:39px}
 .commercial-hero .hero-title {font-size:clamp(35px,8.1vw,53px);letter-spacing:-1.7px;line-height:1.1}
 .commercial-hero .hero-eyebrow {font-size:10px;letter-spacing:1.7px}
 .commercial-hero .hero-description {font-size:16px;line-height:1.6;margin:19px auto 25px}
 .commercial-hero .hero-actions {gap:10px}
 .commercial-hero .hero-actions .button {min-height:48px;font-size:13px;padding:11px 15px}
 .commercial-hero .hero-media {min-height:225px}
 .commercial-hero .hero-reference-image {height:225px;aspect-ratio:unset;object-fit:cover;object-position:center}
 .commercial-hero .hero-discipline {min-height:34px;padding:7px 10px;font-size:10px}
 .commercial-hero .hero-discipline .icon {width:17px;height:17px}
 .commercial-hero .hero-discipline--management {top:10%;right:4%}
 .commercial-hero .hero-discipline--digital {top:10%;left:4%}
 .commercial-hero .hero-discipline--contracts {bottom:8%;top:auto;right:4%}
 .commercial-hero .trust-strip {grid-template-columns:1fr;gap:9px;padding:15px 0 23px}
 .commercial-hero .trust-item {justify-content:flex-start;font-size:13px;min-height:32px}
 .commercial-hero .trust-item + .trust-item {border:0}
 .why-section,.category-section,.featured-section,.team-section,.faq-section {padding:64px 0}
 .section-title {font-size:clamp(29px,8vw,42px);letter-spacing:-1.1px}
 .why-layout,.contractor-layout,.faq-layout,.context-layout,.service-detail-grid,.contractor-example-layout {grid-template-columns:1fr;gap:22px}
 .large-lead {font-size:17px}
 .category-grid,.team-grid,.catalog-grid,.contract-offers-grid {grid-template-columns:1fr}
 .category-tile {min-height:223px;padding:24px}
 .category-topline {margin-bottom:20px}
 .feature-item,.feature-item:nth-child(4),.feature-item:nth-child(5) {grid-column:span 12;min-height:0;padding:23px 17px}
 .featured-grid {gap:10px}
 .contractor-showcase {padding:65px 0}
 .contractor-copy h2 {font-size:34px;letter-spacing:-1.2px}
 .contractor-copy p:not(.eyebrow) {font-size:15px}
 .contractor-image-panel img {min-height:225px;height:240px}
 .process {padding:65px 0}
 .process-grid {grid-template-columns:1fr 1fr;gap:22px}
 .process-grid::before {display:none}
 .process-item {padding-inline:2px}
 .process-marker {height:68px}
 .process-number {height:39px;width:39px;font-size:17px}
 .process-icon {height:60px;width:60px}
 .process-icon .icon {height:30px;width:30px}
 .process-title {font-size:16px!important}
 .process-description {font-size:13px!important}
 .faq-items summary {font-size:15px;padding:19px 0}
 .contact {padding:65px 0}
 .contact-layout {display:block}
 .contact-copy {padding:0 0 25px}
 .contact-title {font-size:38px}
 .contact-description {font-size:16px}
 .form-grid,.dynamic-questions,.detail-metadata {grid-template-columns:1fr}
 .form-grid {gap:14px}
 .contact-form {padding:18px 14px}
 .closing {padding:38px 0}
 .closing-copy {font-size:22px}
 .closing-actions {gap:12px}
 .closing-actions .button {font-size:13px;min-height:44px}
 .commercial-interior-hero {padding:42px 0 55px}
 .commercial-interior-hero .seo-title {font-size:36px;letter-spacing:-1.4px}
 .commercial-interior-hero .seo-lead {font-size:16px}
 .commercial-interior-hero .seo-hero-actions {flex-wrap:wrap}
 .catalog-jump>.container {gap:6px;padding-block:10px}
 .catalog-jump a {font-size:11px;padding:9px 10px}
 .catalog-group,.contractor-context,.contractor-offers,.contractor-example,.service-detail-section,.related-services {padding:60px 0}
 .catalog-group-header {align-items:flex-start;flex-direction:column}
 .catalog-group-header h2 {font-size:30px}
 .catalog-group-header p:not(.eyebrow) {font-size:15px}
 .commercial-service-card {min-height:0;padding:23px}
 .service-detail-main h2 {font-size:24px}
 .contractor-example-layout img {max-height:310px;object-fit:cover}
}
@media (max-width:380px) {.commercial-hero .hero-discipline {font-size:9px}.commercial-hero .hero-discipline .icon {display:none}.header-inner .brand {width:170px}}
@media (prefers-reduced-motion:reduce) {.category-tile,.commercial-service-card,.button {transition:none!important;transform:none!important}}
