:root{
  --ink:#173034;--muted:#647476;--paper:#f6f7f3;--card:#fff;--line:#d9e1dc;
  --dark:#0b4e4b;--integral:#0c5b56;--terrain:#4f7d2a;--analysis:#1676b8;
  --data:#6a4cc7;--quick:#d76513;--special:#a5202e;--shadow:0 18px 48px rgba(24,48,52,.10);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}
.site-header{position:sticky;top:0;z-index:20;height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,4vw,64px);background:rgba(246,247,243,.93);backdrop-filter:blur(16px);border-bottom:1px solid rgba(217,225,220,.9)}
.brand{display:flex;gap:12px;align-items:center;font-size:12px;line-height:1.15;letter-spacing:.04em;text-transform:uppercase}.brand strong{font-size:13px}.brand-subtitle{font-size:11px;color:#627375;font-weight:700}.brand-mark{width:34px;height:34px;border-radius:50%;background:var(--dark);position:relative;overflow:hidden}.brand-mark span{position:absolute;border:1px solid rgba(255,255,255,.75);border-radius:50%;width:40px;height:18px;left:-3px}.brand-mark span:nth-child(1){top:7px}.brand-mark span:nth-child(2){top:13px}.brand-mark span:nth-child(3){top:19px}.header-actions{display:flex;gap:24px;align-items:center;font-size:14px;font-weight:650}.header-actions a:hover{text-decoration:underline;text-underline-offset:5px}
.button{border:0;border-radius:999px;background:var(--dark);color:white;padding:12px 19px;font-weight:750;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:.2s transform,.2s box-shadow,.2s background}.button:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(11,78,75,.18)}.button-small{padding:9px 15px}.button-secondary{background:white;color:var(--dark);border:1px solid var(--line)}
.hero{min-height:620px;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(380px,.98fr);align-items:center;gap:clamp(30px,5vw,80px);padding:70px clamp(22px,6vw,92px) 78px;background:linear-gradient(145deg,#f8faf6 0%,#eef4ee 70%,#e8f0e9 100%);overflow:hidden}.eyebrow{font-size:12px;letter-spacing:.14em;font-weight:850;color:var(--dark);margin:0 0 10px}.hero h1{font-size:clamp(42px,5.3vw,74px);line-height:.98;letter-spacing:-.045em;margin:0;max-width:830px}.hero-lead{font-size:clamp(17px,1.6vw,21px);color:#4d6264;max-width:780px;margin:26px 0 30px}.hero-actions{display:flex;flex-wrap:wrap;gap:10px}.hero-notes{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:24px;font-size:13px;color:#526769}.hero-visual{height:470px;position:relative;isolation:isolate}.hero-visual svg{position:absolute;inset:auto -60px -20px 0;width:112%;height:75%;z-index:-1}.hero-visual svg path:first-child{fill:#cbd9c7}.hero-visual svg path:not(:first-child){fill:none;stroke:#78928a;stroke-width:2;opacity:.65}.terrain-card{position:absolute;background:rgba(255,255,255,.9);box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.8);border-radius:22px;padding:18px;display:flex;align-items:end;font-size:12px;font-weight:850;letter-spacing:.12em}.terrain-card::before{content:"";position:absolute;inset:12px;border-radius:15px;background:repeating-radial-gradient(ellipse at 30% 40%,transparent 0 12px,rgba(12,91,86,.12) 13px 14px)}.terrain-card span{z-index:1;background:white;padding:5px 9px;border-radius:999px}.terrain-card-one{width:250px;height:190px;left:4%;top:18%;transform:rotate(-7deg)}.terrain-card-two{width:270px;height:210px;right:0;top:5%;transform:rotate(6deg)}.terrain-card-three{width:240px;height:180px;right:14%;bottom:3%;transform:rotate(-2deg)}
.quick-nav,.catalog-section,.how-section,.contact-section{padding:72px clamp(22px,6vw,92px)}.quick-nav{padding-bottom:28px}.section-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:28px}.section-heading.compact{margin-bottom:18px}.section-heading h2,.contact-section h2{font-size:clamp(30px,3.3vw,46px);line-height:1.02;margin:0;letter-spacing:-.035em}.section-heading>p{max-width:650px;color:var(--muted);margin:0}.audience-filters{display:flex;flex-wrap:wrap;gap:10px}.filter-chip{border:1px solid var(--line);background:white;border-radius:999px;padding:10px 16px;font-weight:700;color:#4f6062;cursor:pointer}.filter-chip:hover,.filter-chip.active{background:var(--dark);border-color:var(--dark);color:white}
.catalog-section{padding-top:38px}.search-row{display:flex;gap:10px;margin-bottom:18px}.search-box{flex:1;display:flex;align-items:center;gap:10px;background:white;border:1px solid var(--line);border-radius:16px;padding:0 16px;box-shadow:0 8px 30px rgba(30,60,60,.04)}.search-box span{font-size:28px;line-height:1;color:#75908c}.search-box input{width:100%;border:0;background:none;outline:0;padding:14px 0;color:var(--ink)}.ghost-button{border:1px solid var(--line);background:transparent;border-radius:14px;padding:0 18px;font-weight:700;color:var(--muted);cursor:pointer}.family-legend{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 28px}.legend-item{display:flex;align-items:center;gap:7px;font-size:12px;color:#586c6e}.legend-dot{width:10px;height:10px;border-radius:3px;background:var(--family)}
.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.category-card{--family:var(--dark);background:var(--card);border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 8px 28px rgba(21,55,55,.05);transition:.2s transform,.2s box-shadow}.category-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.category-top{padding:20px 20px 18px;border-top:6px solid var(--family);cursor:pointer}.category-number{display:inline-flex;width:34px;height:34px;border-radius:10px;align-items:center;justify-content:center;background:color-mix(in srgb,var(--family) 12%,white);color:var(--family);font-weight:900;margin-bottom:12px}.category-title{font-size:18px;line-height:1.13;margin:0 0 8px}.category-intro{color:var(--muted);font-size:13px;margin:0}.category-meta{display:flex;justify-content:space-between;margin-top:15px;font-size:12px;font-weight:750;color:#6a7a7b}.category-services{border-top:1px solid var(--line);display:none}.category-card.open .category-services{display:block}.service-row{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;padding:12px 16px;border-bottom:1px solid #edf0ed;cursor:pointer}.service-row:last-child{border-bottom:0}.service-row:hover{background:#f8faf7}.service-name{font-size:13px;font-weight:670}.service-price{white-space:nowrap;font-size:12px;color:var(--family);font-weight:850}.service-open{font-size:11px;color:#728284;margin-top:3px}.service-row-featured{background:linear-gradient(90deg,#f3f8fb 0%,#fff 100%);border-left:4px solid var(--orange);padding-left:12px}.service-row-featured:hover{background:linear-gradient(90deg,#edf6fb 0%,#fff9f2 100%)}.service-featured-label{display:inline-block;margin-bottom:4px;padding:3px 7px;border-radius:999px;background:#fff1df;color:#b65d00;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.portfolio-product-price{display:flex;align-items:baseline;gap:8px;margin:-4px 0 18px;padding:10px 12px;border:1px solid #dce6ed;border-radius:12px;background:#f7fafc;color:var(--navy)}.portfolio-product-price span{font-size:11px;color:#687b89;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.portfolio-product-price strong{font-size:18px}.no-results{padding:50px;text-align:center;color:var(--muted)}
.how-section{background:#eaf1ec}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.steps article{background:white;border:1px solid var(--line);border-radius:20px;padding:24px}.steps span{font-size:12px;font-weight:900;color:var(--dark);background:#eaf3ef;border-radius:999px;padding:6px 9px}.steps h3{font-size:18px;margin:18px 0 8px}.steps p{font-size:14px;color:var(--muted);margin:0}.contact-section{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:center}.contact-section>div>p:not(.eyebrow){color:var(--muted);max-width:700px}.contact-card{background:white;border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:var(--shadow)}.contact-owner{font-size:18px;font-weight:850;color:var(--ink)!important;margin:0 0 5px}.contact-location{font-weight:700;color:var(--ink)!important;margin:0 0 4px}.contact-availability{font-size:13px;color:var(--muted)!important;margin:0 0 14px}.accepted-files{display:grid;gap:4px;margin:16px 0;padding:12px 14px;border-radius:12px;background:#f4f7f4;font-size:12px;color:var(--muted)}.accepted-files strong{color:var(--ink)}.field-note{font-size:12px!important;margin:8px 0 18px!important;color:#6f7d7e!important}.configured-contact{display:flex;flex-direction:column;gap:4px;margin:14px 0 20px;font-size:14px}.configured-contact:empty{display:none}.disclaimer{margin:0 clamp(22px,6vw,92px) 60px;border-left:4px solid #b8842e;background:#fff9e9;padding:18px 20px;border-radius:0 12px 12px 0;font-size:13px;color:#6d6047}footer{background:#103f3d;color:#dbe8e5;padding:22px clamp(22px,6vw,92px);display:flex;justify-content:space-between;gap:20px;font-size:12px}
.service-dialog,.quote-dialog{width:min(720px,calc(100vw - 28px));border:0;border-radius:24px;padding:0;box-shadow:0 28px 90px rgba(11,35,38,.25);color:var(--ink)}dialog::backdrop{background:rgba(8,31,32,.58);backdrop-filter:blur(3px)}.dialog-close{position:absolute;right:15px;top:12px;border:0;background:#edf1ee;width:34px;height:34px;border-radius:50%;font-size:23px;cursor:pointer;z-index:2}.dialog-inner{padding:32px}.dialog-family{display:inline-block;background:var(--family);color:white;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.dialog-inner h2,.quote-dialog h2{font-size:32px;line-height:1.08;margin:14px 48px 8px 0;letter-spacing:-.03em}.dialog-price{font-size:20px;font-weight:900;color:var(--family);margin-bottom:20px}.dialog-summary{font-size:16px;color:#526769}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0}.detail-card{border:1px solid var(--line);border-radius:14px;padding:15px}.detail-card h3{font-size:13px;margin:0 0 7px}.detail-card p,.detail-card ul{font-size:13px;color:var(--muted);margin:0}.detail-card ul{padding-left:18px}.dialog-footer{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:24px}.dialog-note{font-size:11px;color:#7a8788;max-width:390px}.quote-dialog{padding:32px}.quote-dialog form{display:grid;gap:14px;margin-top:22px}.quote-dialog label{display:grid;gap:6px;font-size:12px;font-weight:800}.quote-dialog input,.quote-dialog textarea,.quote-dialog select{border:1px solid var(--line);border-radius:12px;padding:11px 12px;outline:0;background:#fafbf9;color:var(--ink)}.quote-dialog input:focus,.quote-dialog textarea:focus,.quote-dialog select:focus{border-color:#71938c;box-shadow:0 0 0 3px rgba(12,91,86,.08)}.quote-actions{display:flex;gap:10px;flex-wrap:wrap}.form-help{font-size:12px;color:var(--muted);margin:0}.form-help code{background:#eef2ef;padding:2px 4px;border-radius:4px}
@media(max-width:1050px){.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{grid-template-columns:1fr;min-height:auto}.hero-visual{height:330px}.steps{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.site-header{height:64px}.header-actions a{display:none}.brand{font-size:10px}.brand strong{font-size:11px}.hero{padding-top:48px}.hero h1{font-size:42px}.hero-visual{height:290px}.terrain-card-one{width:190px;height:145px}.terrain-card-two{width:205px;height:155px}.terrain-card-three{width:180px;height:135px}.section-heading{display:block}.section-heading>p{margin-top:14px}.category-grid,.steps,.contact-section{grid-template-columns:1fr}.service-row{grid-template-columns:1fr}.service-price{margin-top:-7px}.detail-grid{grid-template-columns:1fr}.dialog-footer{align-items:flex-start;flex-direction:column}.contact-section{gap:24px}footer{flex-direction:column}.search-row{align-items:stretch}.ghost-button{padding:0 12px}}
@media print{.site-header,.hero-visual,.audience-filters,.search-row,.family-legend,.js-quote,.how-section,.contact-section{display:none!important}.hero{display:block;min-height:0;padding:28px}.hero h1{font-size:34px}.catalog-section{padding:20px}.category-grid{grid-template-columns:repeat(2,1fr)}.category-services{display:block!important}footer{background:white;color:black}.disclaimer{margin:20px}}

/* === Identidad corporativa Geoprospecciones del Norte Chico SpA === */
:root{
  --ink:#10283b;
  --muted:#64717b;
  --paper:#f5f7f8;
  --card:#ffffff;
  --line:#d8e0e6;
  --dark:#001c39;
  --navy:#001c39;
  --blue:#1d486c;
  --orange:#c86e0a;
  --gray:#5e6266;
  --shadow:0 18px 48px rgba(0,28,57,.10);
}
.site-header{height:84px;background:rgba(255,255,255,.95);border-bottom:1px solid #d9e1e7}
.brand{gap:14px;text-transform:none;letter-spacing:0;min-width:0}
.brand-logo{width:62px;height:52px;object-fit:contain;border-radius:8px;background:#fff;flex:0 0 auto}
.brand-copy{display:block;min-width:0;line-height:1.18}
.brand strong{display:block;color:var(--navy);font-size:14px;letter-spacing:.01em;white-space:nowrap}
.brand-subtitle{font-size:11px;color:var(--gray);font-weight:750}
.header-actions a{color:#364d61}.header-actions a:hover{color:var(--orange)}
.button{background:var(--navy);box-shadow:0 10px 26px rgba(0,28,57,.15)}
.button:hover{background:#0b3557}
.button-secondary{background:#fff;color:var(--navy);border-color:#b9c7d2;box-shadow:none}
.button-secondary:hover{background:#f4f7f9}
.eyebrow{color:var(--orange);letter-spacing:.13em}
.hero{background:linear-gradient(135deg,#f8fafb 0%,#f2f6f8 56%,#eef3f6 100%)}
.hero h1{color:var(--navy)}
.hero-lead strong{color:var(--navy)}
.hero-visual{overflow:visible}
.hero-logo-card{position:absolute;z-index:4;top:0;left:7%;right:2%;display:flex;align-items:center;gap:18px;background:rgba(255,255,255,.96);border:1px solid #dce4e9;border-radius:22px;padding:18px 20px;box-shadow:0 20px 50px rgba(0,28,57,.13)}
.hero-logo-card img{width:124px;height:94px;object-fit:contain;background:#fff;border-radius:12px}
.hero-logo-card div{display:grid;gap:5px}.hero-logo-card strong{font-size:16px;line-height:1.15;color:var(--navy)}.hero-logo-card span{font-size:12px;color:var(--gray);font-weight:700}
.terrain-card{border-color:#dfe6eb}.terrain-card::before{background:repeating-radial-gradient(ellipse at 30% 40%,transparent 0 12px,rgba(29,72,108,.12) 13px 14px)}
.terrain-card-one{top:35%}.terrain-card-two{top:29%}.terrain-card-three{bottom:0}
.hero-visual svg path:first-child{fill:#c9d5df}.hero-visual svg path:not(:first-child){stroke:#67839a}
.company-section{padding:72px clamp(22px,6vw,92px);background:#fff;border-top:1px solid #e6ecef;border-bottom:1px solid #e2e8ec}
.company-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.company-grid article{background:#f7f9fa;border:1px solid #dce4e9;border-radius:20px;padding:24px}.company-grid span{display:inline-flex;color:#fff;background:var(--navy);border-radius:999px;padding:5px 9px;font-size:11px;font-weight:900}.company-grid h3{margin:16px 0 7px;color:var(--navy);font-size:18px}.company-grid p{margin:0;color:var(--muted);font-size:14px}
.filter-chip:hover,.filter-chip.active{background:var(--navy);border-color:var(--navy)}
.how-section{background:#edf2f5}.steps span{color:var(--navy);background:#e6edf2}
.contact-card{border-top:5px solid var(--orange)}
.contact-logo{display:block;width:170px;max-height:126px;object-fit:contain;margin:0 0 12px;background:#fff;border-radius:12px}
.contact-business{font-size:18px;font-weight:900;color:var(--navy)!important;margin:0 0 4px!important}
.contact-owner{font-size:14px;font-weight:750!important;color:#526271!important;margin:0 0 10px!important}
.configured-contact a:hover{color:var(--orange)}
.disclaimer{border-left-color:var(--orange);background:#fff7ec;color:#66533c}
footer{background:var(--navy);color:#e5edf3}
.dialog-family{background:var(--family)}
@media(max-width:1050px){.company-grid{grid-template-columns:1fr}.hero-logo-card{left:3%;right:3%}}
@media(max-width:720px){.site-header{height:72px}.brand-logo{width:49px;height:44px}.brand strong{font-size:11px;white-space:normal;max-width:205px}.brand-subtitle{font-size:9px}.hero-logo-card{position:relative;left:auto;right:auto;top:auto;margin:0 0 18px}.hero-logo-card img{width:98px;height:76px}.hero-visual{height:365px}.terrain-card-one{top:42%}.terrain-card-two{top:38%}}
@media print{.company-section{display:none!important}}

/* === Portafolio / ejemplos de entregables === */
.portfolio-section{padding:78px clamp(22px,6vw,92px);background:#fff;border-top:1px solid #e4eaee;border-bottom:1px solid #e4eaee}
.portfolio-heading{align-items:start}.portfolio-heading-copy{max-width:650px;display:grid;gap:16px}.portfolio-heading-copy p{margin:0;color:var(--muted)}.portfolio-download{justify-self:start}
.portfolio-proof{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 26px}.portfolio-proof span{display:flex;align-items:center;gap:5px;background:#f3f6f8;border:1px solid #dce4e9;border-radius:999px;padding:8px 12px;font-size:12px;color:#65727b}.portfolio-proof strong{color:var(--navy)}
.portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.portfolio-card{background:#fff;border:1px solid #dbe3e8;border-radius:22px;overflow:hidden;box-shadow:0 10px 34px rgba(0,28,57,.07);display:grid;grid-template-rows:auto 1fr;min-width:0}.portfolio-card-featured{border-color:#bfcfda;box-shadow:0 16px 44px rgba(0,28,57,.10)}

.portfolio-card-wide{grid-column:1/-1;grid-template-columns:minmax(0,1.55fr) minmax(300px,.85fr);grid-template-rows:1fr;align-items:stretch}
.portfolio-card-wide .portfolio-image-button{height:100%;min-height:390px;aspect-ratio:auto;background:#f5f7f8}
.portfolio-card-wide .portfolio-image-button img{object-fit:contain;background:#fff}
.portfolio-card-body-wide{justify-content:center;padding:34px 34px 32px}
.portfolio-card-body-wide h3{font-size:26px;max-width:470px}
.portfolio-card-body-wide>p{font-size:14px;line-height:1.55;max-width:520px;margin-bottom:18px}
.portfolio-highlights{list-style:none;margin:0 0 24px;padding:0;display:grid;gap:10px;color:#4f616d;font-size:13px}
.portfolio-highlights li{position:relative;padding-left:22px}.portfolio-highlights li::before{content:"✓";position:absolute;left:0;top:-1px;color:var(--orange);font-weight:950}
.portfolio-wide-actions{display:flex;align-items:center;gap:18px;margin-top:2px}.portfolio-wide-actions .portfolio-quote{margin-top:0}.portfolio-open{background:var(--navy);color:#fff;border:0}.portfolio-open:hover{background:#0a345b}
.portfolio-image-button{position:relative;border:0;padding:0;background:#eef2f5;cursor:zoom-in;overflow:hidden;aspect-ratio:2338/1654;display:block;width:100%}.portfolio-image-button img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease,filter .35s ease}.portfolio-image-button:hover img{transform:scale(1.018);filter:saturate(1.03)}.portfolio-zoom{position:absolute;right:14px;bottom:14px;background:rgba(0,28,57,.9);color:white;border-radius:999px;padding:7px 11px;font-size:11px;font-weight:850;box-shadow:0 7px 18px rgba(0,28,57,.2)}
.portfolio-card-body{padding:20px;display:flex;flex-direction:column;align-items:flex-start}.portfolio-audience{font-size:10px;font-weight:900;letter-spacing:.09em;color:var(--orange);background:#fff4e7;border:1px solid #f1d2ad;border-radius:999px;padding:5px 8px}.portfolio-card h3{margin:13px 0 7px;color:var(--navy);font-size:20px;line-height:1.1}.portfolio-card p{margin:0 0 16px;color:var(--muted);font-size:13px}.portfolio-quote{margin-top:auto;border:0;background:none;color:var(--navy);padding:0;font-weight:850;font-size:12px;cursor:pointer;text-decoration:underline;text-decoration-color:#b6c5d0;text-underline-offset:4px}.portfolio-quote:hover{color:var(--orange);text-decoration-color:var(--orange)}
.portfolio-cta{margin-top:22px;border-radius:20px;background:var(--navy);color:white;padding:22px 24px;display:flex;gap:20px;align-items:center;justify-content:space-between}.portfolio-cta div{display:grid;gap:3px}.portfolio-cta strong{font-size:17px}.portfolio-cta span{font-size:13px;color:#cbd7e0}.portfolio-cta .button{background:white;color:var(--navy);box-shadow:none;white-space:nowrap}.portfolio-cta .button:hover{background:#f2f6f8}
.portfolio-dialog{width:min(1180px,calc(100vw - 28px));max-height:calc(100vh - 28px);border:0;border-radius:22px;padding:0;box-shadow:0 28px 90px rgba(11,35,38,.30);color:var(--ink)}.portfolio-dialog-inner{padding:26px;background:#fff}.portfolio-dialog-top{display:flex;justify-content:space-between;align-items:end;gap:22px;margin:0 42px 18px 0}.portfolio-dialog-top h2{margin:0;color:var(--navy);font-size:clamp(24px,3vw,36px);line-height:1.05}.portfolio-dialog-top .eyebrow{margin-bottom:6px}.portfolio-dialog img{display:block;width:100%;height:auto;border:1px solid #dce4e9;border-radius:14px;background:#f4f6f7}.portfolio-dialog-note{font-size:11px;color:#78858d;margin:12px 0 0}.portfolio-dialog-quote{flex:0 0 auto}
@media(max-width:900px){.portfolio-grid{grid-template-columns:1fr}.portfolio-card-wide{grid-column:auto;grid-template-columns:1fr;grid-template-rows:auto 1fr}.portfolio-card-wide .portfolio-image-button{min-height:0;aspect-ratio:2338/1654}.portfolio-card-body-wide{padding:22px}.portfolio-card-body-wide h3{font-size:22px}.portfolio-heading{display:block}.portfolio-heading-copy{margin-top:14px}.portfolio-dialog-top{align-items:flex-start;flex-direction:column}.portfolio-dialog-inner{padding:18px}}
@media(max-width:720px){.portfolio-section{padding:58px 22px}.portfolio-proof{display:grid}.portfolio-proof span{border-radius:12px}.portfolio-card-body{padding:17px}.portfolio-card h3{font-size:18px}.portfolio-highlights{font-size:12px}.portfolio-wide-actions{align-items:stretch;flex-direction:column;width:100%;gap:12px}.portfolio-wide-actions .button{width:100%}.portfolio-wide-actions .portfolio-quote{align-self:flex-start}.portfolio-cta{align-items:stretch;flex-direction:column}.portfolio-cta .button{width:100%}.portfolio-dialog{width:calc(100vw - 14px);max-height:calc(100vh - 14px)}.portfolio-dialog-inner{padding:14px}.portfolio-dialog-top{margin-right:36px}.portfolio-dialog-quote{width:100%}}
@media print{.portfolio-section{display:none!important}}

/* === Hero V5: evidencia visual real === */
.hero-showcase{
  min-height:490px;
  height:auto;
  position:relative;
  overflow:visible;
  isolation:isolate;
  padding-top:92px;
}
.hero-showcase::before{
  content:"";
  position:absolute;
  inset:42px -30px 10px 20px;
  border-radius:38px;
  background:linear-gradient(145deg,rgba(220,229,236,.75),rgba(244,247,249,.28));
  z-index:-2;
}
.hero-showcase::after{
  content:"";
  position:absolute;
  left:2%;right:-4%;bottom:1%;height:44%;
  background:
    linear-gradient(170deg,transparent 0 44%,rgba(95,127,151,.18) 44.4% 45%,transparent 45.4%),
    linear-gradient(165deg,transparent 0 61%,rgba(95,127,151,.14) 61.4% 62%,transparent 62.4%);
  z-index:-1;
  pointer-events:none;
}
.hero-showcase-head{
  position:absolute;z-index:6;top:0;left:7%;right:4%;
  display:grid;grid-template-columns:1fr auto;grid-template-areas:"tag link" "title link";
  column-gap:18px;align-items:center;
  background:rgba(255,255,255,.96);border:1px solid #dce4e9;border-radius:20px;
  padding:16px 18px;box-shadow:0 18px 44px rgba(0,28,57,.11)
}
.hero-showcase-head span{grid-area:tag;font-size:10px;font-weight:900;letter-spacing:.11em;color:var(--orange)}
.hero-showcase-head strong{grid-area:title;color:var(--navy);font-size:18px;line-height:1.1}
.hero-showcase-head a{grid-area:link;color:var(--navy);font-size:12px;font-weight:850;white-space:nowrap;border-bottom:1px solid #9fb1bf;padding-bottom:2px}
.hero-showcase-head a:hover{color:var(--orange);border-color:var(--orange)}
.hero-preview{
  position:absolute;display:block;background:#fff;border:1px solid #d8e2e8;border-radius:18px;
  overflow:hidden;box-shadow:0 18px 45px rgba(0,28,57,.15);transition:transform .25s ease,box-shadow .25s ease;
}
.hero-preview:hover{transform:translateY(-5px)!important;box-shadow:0 24px 56px rgba(0,28,57,.2)}
.hero-preview img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.hero-preview span{position:absolute;left:12px;bottom:12px;background:rgba(0,28,57,.9);color:#fff;border-radius:999px;padding:6px 9px;font-size:9px;font-weight:900;letter-spacing:.08em;box-shadow:0 6px 16px rgba(0,28,57,.16)}
.hero-preview-main{z-index:3;width:72%;height:61%;right:1%;top:22%;transform:rotate(2deg)}
.hero-preview-left{z-index:4;width:44%;height:39%;left:0;bottom:2%;transform:rotate(-5deg)}
.hero-preview-right{z-index:5;width:39%;height:35%;right:2%;bottom:-2%;transform:rotate(3deg)}
.hero-showcase-proof{
  position:absolute;z-index:7;left:42%;bottom:3%;transform:translateX(-50%);
  display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #d8e2e8;border-radius:14px;
  padding:8px 11px;box-shadow:0 9px 24px rgba(0,28,57,.12);max-width:185px
}
.hero-showcase-proof strong{font-size:21px;color:var(--orange);line-height:1}.hero-showcase-proof span{font-size:9px;line-height:1.15;color:#566875;font-weight:750}

@media(max-width:1050px){
  .hero-showcase{min-height:460px;padding-top:88px;max-width:760px;width:100%;margin:0 auto}
  .hero-preview-main{width:69%;right:3%}.hero-preview-left{left:4%}.hero-preview-right{right:5%}
}
@media(max-width:720px){
  .hero-showcase{height:auto;min-height:430px;padding-top:102px;margin-top:10px}
  .hero-showcase-head{left:0;right:0;grid-template-columns:1fr;grid-template-areas:"tag" "title" "link";gap:3px;padding:14px 15px}
  .hero-showcase-head strong{font-size:16px}.hero-showcase-head a{justify-self:start;margin-top:4px}
  .hero-preview-main{top:30%;right:0;width:74%;height:46%}
  .hero-preview-left{left:0;bottom:4%;width:48%;height:31%}
  .hero-preview-right{right:1%;bottom:0;width:43%;height:29%}
  .hero-showcase-proof{display:none}
}

/* === V6: cierre de portafolio de ancho completo, independiente de la grilla 2x2 === */
.portfolio-card-wide-standalone{
  width:100%;
  margin-top:20px;
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(340px,.75fr);
  grid-template-rows:1fr;
  align-items:stretch;
}
.portfolio-card-wide-standalone .portfolio-image-button{
  height:100%;
  min-height:410px;
  aspect-ratio:auto;
  background:#f5f7f8;
}
.portfolio-card-wide-standalone .portfolio-image-button img{
  object-fit:contain;
  background:#fff;
}
@media(max-width:900px){
  .portfolio-card-wide-standalone{
    grid-template-columns:1fr;
    grid-template-rows:auto 1fr;
  }
  .portfolio-card-wide-standalone .portfolio-image-button{
    min-height:0;
    aspect-ratio:2338/1654;
  }
}


.portfolio-inline-note{margin:0 0 1rem;color:var(--muted);font-size:.95rem;line-height:1.55;padding:.85rem 1rem;border:1px solid var(--line);border-radius:14px;background:#f7fafc}.portfolio-inline-note strong{color:var(--ink)}

/* === V8: Mapa Técnico Territorial Integrado === */
.portfolio-card-premium{margin-bottom:20px}
.portfolio-card-premium .portfolio-image-button{min-height:440px}
.portfolio-card-premium .portfolio-pdf-link{text-decoration:none;white-space:nowrap}
@media(max-width:900px){.portfolio-card-premium .portfolio-image-button{min-height:0}}


/* === V9: muestra premium refinada === */
.portfolio-dialog-actions{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;justify-content:flex-end}
.portfolio-quote-featured{background:#0b3557;color:#fff;border-color:#0b3557;white-space:nowrap}
.portfolio-quote-featured:hover{background:#082a46;border-color:#082a46}
@media(max-width:700px){.portfolio-dialog-actions{justify-content:flex-start}.portfolio-dialog-top{gap:1rem;align-items:flex-start;flex-direction:column}}
