/* SCC Mineral — sitio web sccm.cl
   Concepto: costa del desierto de Atacama. Hero a pantalla completa con foto/video,
   páginas por línea de negocio, lenguaje de plano de mensura en los detalles.
   Paletas de prueba del acento "cobre" en html[data-pal] (no modifican el branding). */

:root{
  --sand:#f6f1e7; --sand-2:#ede4d2; --line:#d9cbae; --ink:#241c15; --muted:#4a3f30;
  --caleta:#123b3c; --night:#0c1b1d; --night-2:#132a2c; --paper:#fbf8f2;
  --on-dark:#f3ecdf; --on-dark-muted:#b9c7c4; --ocre:#8a5a12;
  /* acento (paleta A por defecto) */
  --acc:#8c4f27; --acc-strong:#6b3d1e; --acc-soft:#c97c4c; --on-acc:#fbf3ea; --mark:#8c4f27;
  --serif:"Source Serif 4", Georgia, "Times New Roman", serif;
  --sans:"IBM Plex Sans", -apple-system, "Segoe UI", Roboto, sans-serif;
  --mono:"IBM Plex Mono", "SF Mono", Menlo, monospace;
  --wrap:1200px;
  color-scheme:light;
}
html[data-pal="b"]{ --acc:#7a5a3e; --acc-strong:#5c4430; --acc-soft:#c9a27e; --on-acc:#fbf3ea; --mark:#7a5a3e; }
html[data-pal="c"]{ --acc:#6e4630; --acc-strong:#523323; --acc-soft:#b07a55; --on-acc:#fbf3ea; --mark:#6e4630; }
html[data-pal="d"]{ --acc:#123b3c; --acc-strong:#0b2a2b; --acc-soft:#c9a27e; --on-acc:#f2f8f7; --mark:#7a5a3e; }

*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){ html{scroll-behavior:auto} *{animation:none !important; transition:none !important} }
body{margin:0;background:var(--sand);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
html[lang="es"] .en, html[lang="en"] .es{display:none !important}
img{max-width:100%}
a{color:var(--caleta)}
a:hover{color:var(--acc)}
:focus-visible{outline:2px solid var(--acc-soft);outline-offset:3px}
.wrap{max-width:var(--wrap);margin:0 auto;padding-inline:clamp(16px,4vw,48px)}
h1,h2,h3{font-family:var(--serif);font-weight:600;margin:0;text-wrap:balance}
h2{font-size:clamp(30px,3.8vw,46px);line-height:1.08;letter-spacing:-.005em}
h3{font-size:22px;line-height:1.25}
p{margin:0}
.eyebrow{font:500 12px/1.4 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--acc);margin:0 0 14px}
.lead{font-size:clamp(17px,1.5vw,20px);line-height:1.55;max-width:60ch}
.muted{color:var(--muted)}
.section{padding-block:clamp(64px,9vw,120px)}
.stack{display:flex;flex-direction:column;gap:18px}
.mono{font-family:var(--mono)}

/* Maqueta: pendientes */
.pend{display:inline-flex;gap:6px;align-items:baseline;font:500 11.5px/1.4 var(--mono);color:var(--ocre);border:1px dashed var(--ocre);padding:3px 8px;border-radius:2px;max-width:100%;background:rgba(246,241,231,.85)}
.pend::before{content:"PENDIENTE";letter-spacing:.08em}

/* ---------- Header ---------- */
.top{position:fixed;inset:0 0 auto 0;z-index:50;padding-top:env(safe-area-inset-top,0px);transition:background .3s, border-color .3s, color .3s;border-bottom:1px solid transparent;color:var(--on-dark)}
.top .wrap{display:flex;align-items:center;gap:28px;min-height:72px;flex-wrap:wrap;padding-block:10px}
.top.solid{background:rgba(251,248,242,.96);backdrop-filter:blur(8px);border-bottom-color:var(--line);color:var(--ink)}
.brand{display:flex;align-items:flex-end;gap:9px;text-decoration:none;margin-right:auto;color:inherit}
.brand svg{width:86px;height:34px;fill:currentColor;transition:fill .3s}
.top.solid .brand svg{fill:var(--mark)}
.brand span{font:600 11px/1 var(--sans);letter-spacing:.16em;padding-bottom:4px}
.top.solid .brand span{color:var(--caleta)}
.nav{display:flex;gap:4px;flex-wrap:wrap}
.nav a{font-size:14.5px;font-weight:500;text-decoration:none;color:inherit;padding:8px 12px;border-radius:2px;position:relative}
.nav a::after{content:"";position:absolute;left:12px;right:12px;bottom:3px;height:2px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .25s}
.nav a:hover::after,.nav a[aria-current="page"]::after{transform:scaleX(1)}
.top.solid .nav a[aria-current="page"]{color:var(--acc)}
.lang{display:inline-flex;border:1px solid currentColor;border-radius:3px;overflow:hidden;opacity:.9}
.lang button{font:500 12px var(--mono);letter-spacing:.06em;background:transparent;color:inherit;border:0;padding:7px 11px;cursor:pointer;min-height:34px}
.lang button[aria-pressed="true"]{background:currentColor}
.lang button[aria-pressed="true"] span{color:var(--night)}
.top.solid .lang button[aria-pressed="true"] span{color:var(--paper)}

/* ---------- Hero (inicio) ---------- */
.hero{position:relative;min-height:clamp(600px,94svh,980px);display:flex;align-items:flex-end;color:var(--on-dark);overflow:hidden;background:var(--night)}
.hero-media{position:absolute;inset:0;margin:0}
.hero-media img,.hero-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-media::after{content:"";position:absolute;inset:0;
  background:
    linear-gradient(90deg, rgba(8,18,20,.86) 0%, rgba(8,18,20,.55) 42%, rgba(8,18,20,.10) 75%),
    linear-gradient(0deg, rgba(8,18,20,.92) 0%, rgba(8,18,20,0) 42%),
    linear-gradient(180deg, rgba(8,18,20,.55) 0%, rgba(8,18,20,0) 22%);}
/* fondo cuando aún no hay foto/video */
.hero-media.empty img,.hero-media.empty video{display:none}
.hero-media.empty{background:
    radial-gradient(120% 60% at 78% 64%, rgba(201,124,76,.38) 0%, rgba(201,124,76,0) 55%),
    linear-gradient(180deg, #0b1719 0%, #102a2c 46%, #173b3b 62%, #2b2a24 63%, #3b3026 76%, #1a1612 100%);}
.hero-media .fallback-art{display:none}
.hero-media.empty .fallback-art{display:block;position:absolute;right:-8%;bottom:26%;width:min(48vw,720px);opacity:.28}
.fallback-art{fill:var(--acc-soft)}
.hero-media.no-video video{display:none}
.hero-media .ph-tag{display:none}
.hero-media.empty .ph-tag{display:block;position:absolute;right:clamp(16px,4vw,48px);top:96px;z-index:2;font:500 11px/1.5 var(--mono);color:var(--on-dark-muted);border:1px dashed rgba(185,199,196,.6);padding:6px 10px;max-width:280px}
.hero-inner{position:relative;z-index:2;width:100%;padding-block:140px clamp(28px,4vw,48px)}
.hero .eyebrow{color:var(--acc-soft)}
.hero h1{font-size:clamp(44px,7.4vw,104px);line-height:.98;letter-spacing:-.015em;max-width:13ch;color:#fbf8f2}
.hero .lead{margin-top:26px;color:#e9e3d6;max-width:52ch}
.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 22px;border-radius:2px;font:600 15px var(--sans);letter-spacing:.01em;text-decoration:none;cursor:pointer;border:1px solid transparent;transition:background .2s,color .2s,border-color .2s}
.btn-acc{background:var(--acc);color:var(--on-acc)}
.btn-acc:hover{background:var(--acc-strong);color:var(--on-acc)}
.hero .btn-acc{background:var(--acc-soft);color:var(--night)}
.hero .btn-acc:hover{background:#f3ecdf;color:var(--night)}
.btn-line{border-color:rgba(243,236,223,.7);color:var(--on-dark)}
.btn-line:hover{background:rgba(243,236,223,.12);color:#fff}
.btn-ink{border-color:var(--caleta);color:var(--caleta)}
.btn-ink:hover{background:var(--caleta);color:var(--paper)}
.hero-bar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:clamp(48px,7vw,88px);border-top:1px solid rgba(243,236,223,.28)}
.hero-bar div{padding:18px 18px 4px 0}
.hero-bar div+div{padding-left:18px;border-left:1px solid rgba(243,236,223,.18)}
.hero-bar b{display:block;font:600 clamp(22px,2.4vw,30px)/1.1 var(--serif);color:#fbf8f2;font-variant-numeric:tabular-nums}
.hero-bar div > span{font-size:13.5px;color:var(--on-dark-muted)}
.scroll-cue{position:absolute;left:50%;bottom:14px;z-index:2;width:22px;height:34px;border:1.5px solid rgba(243,236,223,.6);border-radius:11px;transform:translateX(-50%)}
.scroll-cue::after{content:"";position:absolute;left:50%;top:7px;width:2px;height:7px;background:rgba(243,236,223,.85);transform:translateX(-50%);animation:cue 1.8s ease-in-out infinite}
@keyframes cue{0%{opacity:0;transform:translate(-50%,0)}40%{opacity:1}100%{opacity:0;transform:translate(-50%,10px)}}
.hero .reveal{animation:rise .9s cubic-bezier(.2,.7,.2,1) both}
.hero .reveal.d2{animation-delay:.12s}.hero .reveal.d3{animation-delay:.24s}.hero .reveal.d4{animation-delay:.36s}
@keyframes rise{from{opacity:.001;transform:translateY(18px)}to{opacity:1;transform:none}}

/* ---------- Page hero (concesiones / planta) ---------- */
.page-hero{position:relative;min-height:clamp(460px,68svh,720px);display:flex;align-items:flex-end;color:var(--on-dark);overflow:hidden;background:var(--night)}
.page-hero .hero-inner{padding-block:140px clamp(32px,4vw,56px)}
.page-hero h1{font-size:clamp(40px,6.2vw,80px);line-height:1;letter-spacing:-.01em;max-width:14ch;color:#fbf8f2}
.page-hero .lead{margin-top:20px;color:#e9e3d6}
.page-hero .eyebrow{color:var(--acc-soft)}
.crumbs{font:500 12px var(--mono);letter-spacing:.08em;color:var(--on-dark-muted);margin-bottom:18px}
.crumbs a{color:inherit;text-decoration:none}
.crumbs a:hover{color:#fff}

/* ---------- Oportunidades (inicio) ---------- */
.ops-head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:40px;align-items:end}
.ops{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:48px}
.op{position:relative;display:flex;align-items:flex-end;min-height:clamp(420px,46vw,600px);overflow:hidden;color:var(--on-dark);text-decoration:none;background:var(--night)}
.op .slot{position:absolute;inset:0;border:0;aspect-ratio:auto}
.op .slot img{transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.op:hover .slot img{transform:scale(1.04)}
.op::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg, rgba(8,18,20,.94) 0%, rgba(8,18,20,.72) 38%, rgba(8,18,20,.2) 66%, rgba(8,18,20,.05) 100%);pointer-events:none}
.op-body{position:relative;z-index:2;padding:clamp(22px,3vw,36px);width:100%}
.op .tag{font:500 11.5px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--acc-soft)}
.op h3{font-size:clamp(28px,3vw,38px);line-height:1.08;margin:10px 0 14px;color:#fbf8f2}
.op ul{list-style:none;margin:0 0 22px;padding:0;display:flex;gap:10px 22px;flex-wrap:wrap;font-size:14.5px;color:#e2dccf}
.op ul li{display:block;position:relative;padding-left:18px}
.op ul li::before{content:"";position:absolute;left:0;top:.72em;width:10px;height:3px;background:var(--acc-soft)}
.op .go{display:inline-flex;align-items:center;gap:10px;font:600 15px var(--sans);color:#fbf8f2;border-bottom:1px solid rgba(243,236,223,.5);padding-bottom:4px}
.op:hover .go{border-color:var(--acc-soft)}
.op .slot.empty .ph{justify-content:flex-start;padding-top:22px}

/* ---------- Costa (latitudes) ---------- */
.coast{background:var(--paper);border-block:1px solid var(--line)}
.coast-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:clamp(28px,5vw,72px);align-items:center}
.rail{list-style:none;margin:0;padding:0;position:relative}
.rail::before{content:"";position:absolute;left:7px;top:14px;bottom:14px;width:2px;background:var(--line)}
.rail li{display:grid;grid-template-columns:16px 96px minmax(0,1fr);gap:16px;align-items:baseline;padding:12px 0}
.rail i{width:16px;height:16px;border:2px solid var(--muted);background:var(--paper);position:relative;top:2px}
.rail li.key i{background:var(--acc);border-color:var(--acc)}
.rail .lat{font:500 13px var(--mono);color:var(--muted);font-variant-numeric:tabular-nums}
.rail strong{font:600 19px/1.3 var(--serif)}
.rail small{display:block;color:var(--muted);font-size:14px}
.rail a{text-decoration:none;color:inherit}
.rail a:hover strong{color:var(--acc)}

/* ---------- Media slots ---------- */
.slot{position:relative;margin:0;aspect-ratio:var(--ar,4/3);max-width:100%;overflow:hidden;background:var(--sand-2);border:1px solid var(--line)}
.slot img,.slot video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.slot .ph{display:none}
.slot.empty img,.slot.empty video{display:none}
.slot.empty .ph{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;gap:5px;padding:16px;
  background:repeating-linear-gradient(180deg, transparent 0 22px, rgba(246,241,231,.9) 22px 26px), var(--sand-2)}
.op .slot.empty .ph{background:repeating-linear-gradient(180deg, transparent 0 30px, rgba(255,255,255,.04) 30px 34px), linear-gradient(160deg,#173b3b,#0c1b1d 70%)}
.slot.empty .ph b{font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--acc)}
.op .slot.empty .ph b{color:var(--acc-soft)}
.slot.empty .ph code{font:500 12.5px var(--mono);color:var(--ink);background:var(--sand);padding:2px 6px;align-self:flex-start;max-width:100%;overflow-wrap:anywhere}
.slot.empty .ph span{font-size:13px;color:var(--muted);background:var(--sand);padding:2px 6px;align-self:flex-start;max-width:100%}
.op .slot.empty .ph code,.op .slot.empty .ph span{background:rgba(8,18,20,.6);color:var(--on-dark-muted)}

/* ---------- Banda empresa ---------- */
.band{background:var(--caleta);color:var(--on-dark)}
.band h2{color:#fbf8f2}
.band .eyebrow{color:var(--acc-soft)}
.band-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(28px,5vw,80px);align-items:center}
.band p{max-width:58ch;color:#dfe7e5}
.legal-id{border-top:1px solid rgba(243,236,223,.25);margin-top:28px;padding-top:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 28px}
.legal-id dt{font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--on-dark-muted)}
.legal-id dd{margin:3px 0 0;font-size:15.5px;color:#fbf8f2}
.band .btn-light{background:#f3ecdf;color:var(--caleta)}
.band .btn-light:hover{background:#fff;color:var(--caleta)}
.band-mark{width:100%;max-width:460px;fill:#f2f8f7;opacity:.92;justify-self:center}

/* ---------- Contacto ---------- */
.contact-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:clamp(28px,5vw,80px);align-items:start}
.card-contact{border-top:3px solid var(--acc);padding-top:18px;margin:0}
.card-contact dt{font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:16px}
.card-contact dd{margin:3px 0 0;font-size:16px}
.copy{font:500 12px var(--mono);border:1px solid var(--line);background:transparent;color:var(--caleta);border-radius:2px;padding:3px 8px;margin-left:8px;cursor:pointer}
form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.field{display:flex;flex-direction:column;gap:6px;min-width:0}
.field.full{grid-column:1/-1}
label{font-size:13.5px;font-weight:500}
input,select,textarea{font:16px var(--sans);color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:2px;padding:11px 12px;min-height:46px;width:100%}
textarea{min-height:130px;resize:vertical}
input:focus,select:focus,textarea:focus{outline:2px solid var(--caleta);outline-offset:0;border-color:var(--caleta)}
.check{flex-direction:row;align-items:flex-start;gap:10px}
.check input{width:20px;min-height:20px;height:20px;margin-top:2px;flex:none}
.check label{font-weight:400;font-size:14px;color:var(--muted)}
.form-msg{grid-column:1/-1;font-size:14px;padding:12px 14px;border:1px solid var(--caleta);color:var(--caleta)}

/* ---------- Concesiones ---------- */
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-block:1px solid var(--line)}
.stats div{padding:20px 18px 20px 0}
.stats div+div{padding-left:18px;border-left:1px solid var(--line)}
.stats b{display:block;font:600 clamp(28px,3vw,38px)/1.1 var(--serif);color:var(--acc);font-variant-numeric:tabular-nums}
.stats span{font-size:14px;color:var(--muted)}
.plano-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(24px,3vw,48px);margin-top:48px;align-items:start}
.plano{border:1px solid var(--line);background-color:var(--paper);background-image:radial-gradient(circle, rgba(74,63,48,.2) 1px, transparent 1.3px);background-size:8px 8px;padding:12px}
.plano svg{display:block;width:100%;height:auto}
.plano .g-line{stroke:var(--line);stroke-width:6}
.plano .g-txt{font-family:var(--mono);font-size:84px;fill:var(--muted)}
.plano .p-expl{fill:var(--acc);stroke:var(--acc);stroke-width:10;cursor:pointer;transition:fill .2s}
.plano .p-expl-in{stroke:var(--paper);stroke-width:7;opacity:.9;pointer-events:none}
.plano .p-expo{fill:var(--ocre);fill-opacity:.1;stroke:var(--ocre);stroke-width:12;stroke-dasharray:60 34;cursor:pointer}
.plano .p-name{font-family:var(--serif);font-weight:600;font-size:132px;fill:var(--ink);pointer-events:none}
.plano .p-sub{font-family:var(--mono);font-size:84px;fill:var(--muted);pointer-events:none}
.plano .hm{fill:var(--paper);stroke:var(--ink);stroke-width:10}
.plano .hm-dot{fill:var(--ink)}
.plano .sea{font-family:var(--mono);font-size:84px;fill:var(--caleta);letter-spacing:6px}
.plano .ink{fill:var(--ink)}
.plano .inkline{stroke:var(--ink);stroke-width:10;fill:none}
.plano .p-expl.on{fill:var(--acc-strong);stroke:var(--acc-strong)}
.plano .p-expo.on{fill-opacity:.3;stroke-width:18}
.legend{display:flex;gap:18px;flex-wrap:wrap;margin-top:12px;font-size:13px;color:var(--muted)}
.legend span{display:inline-flex;gap:8px;align-items:center}
.legend i{display:inline-block;width:22px;height:12px}
.lg-expl{background:var(--acc)}
.lg-expo{border:2px dashed var(--ocre);background:rgba(138,90,18,.12)}
.lg-hm{width:12px !important;height:12px !important;border:2px solid var(--ink);background:var(--paper)}
.fichas{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.ficha{border-bottom:1px solid var(--line);padding:18px 0 18px 16px;border-left:3px solid transparent;cursor:pointer;transition:background .2s,border-color .2s}
.ficha.on{border-left-color:var(--acc);background:rgba(237,228,210,.6)}
.ficha header{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:baseline}
.chip{font:500 11.5px var(--mono);letter-spacing:.06em;text-transform:uppercase;padding:4px 9px;border-radius:2px;white-space:nowrap}
.chip-ok{background:var(--acc);color:var(--on-acc)}
.chip-proc{border:1px solid var(--acc);color:var(--acc)}
.chip-expo{border:1px dashed var(--ocre);color:var(--ocre)}
.ficha dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 16px;margin:12px 0 0}
.ficha dt{font:500 11px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.ficha dd{margin:0;font-size:15px;font-variant-numeric:tabular-nums}
.ficha details{margin-top:10px}
.ficha summary{font-size:13.5px;color:var(--caleta);cursor:pointer}
.coord-wrap{overflow-x:auto;margin-top:8px}
.coord{border-collapse:collapse;font-family:var(--mono);font-size:12.5px;font-variant-numeric:tabular-nums;min-width:300px}
.coord th,.coord td{text-align:right;padding:4px 10px;border-bottom:1px solid var(--line)}
.coord th:first-child,.coord td:first-child{text-align:left}
.coord th{font-weight:500;color:var(--muted)}
.terms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);margin-top:36px;background:var(--paper)}
.terms div{padding:18px 20px}
.terms div+div{border-left:1px solid var(--line)}
.terms dt{font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.terms dd{margin:5px 0 0;font:600 20px var(--serif)}
.datum{font-size:13px;color:var(--muted);margin-top:14px;max-width:84ch}
.gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.gallery .wide{grid-column:span 2}

/* ---------- Planta ---------- */
.flow{list-style:none;margin:48px 0 0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}
.flow li{position:relative;padding:20px 18px 20px 0;border-top:3px solid var(--acc);min-width:0}
.flow li+li{padding-left:18px;border-left:1px solid var(--line)}
.flow .n{font:500 12px var(--mono);color:var(--acc);letter-spacing:.1em}
.flow h3{font-size:19px;margin:8px 0}
.flow p{font-size:14.5px;color:var(--muted)}
.flow .out{display:block;margin-top:12px;font:500 12.5px var(--mono);color:var(--ink)}
.planta-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,3vw,48px);align-items:start}
.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line);margin:0}
.facts.f4{grid-template-columns:repeat(4,minmax(0,1fr))}
.facts.f4 div+div{padding-left:0}
.facts div{padding:16px 12px 16px 0;border-bottom:1px solid var(--line)}
.facts dt{font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.facts dd{margin:3px 0 0;font-size:16px;font-variant-numeric:tabular-nums}
.facts dd b{font:600 24px var(--serif);color:var(--acc)}
.status{margin-top:22px;padding:18px 20px;border:1px solid var(--line);background:var(--paper)}
.status b{font:600 18px var(--serif)}
.planta-media{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.planta-media .wide{grid-column:span 2}

/* ---------- CTA final ---------- */
.cta-band{background:var(--night);color:var(--on-dark)}
.cta-band .wrap{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;padding-block:clamp(48px,6vw,72px)}
.cta-band h2{color:#fbf8f2;font-size:clamp(26px,3vw,36px);max-width:22ch}
.cta-band .btn-acc{background:var(--acc-soft);color:var(--night)}
.cta-band .btn-acc:hover{background:#f3ecdf}

/* ---------- Footer ---------- */
footer{background:var(--paper);border-top:1px solid var(--line);padding-block:44px;font-size:13px;color:var(--muted)}
.foot-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.2fr);gap:32px}
.foot-brand svg{width:104px;height:40px;fill:var(--mark)}
footer p+p{margin-top:8px}
footer nav{display:flex;gap:16px;flex-wrap:wrap;margin-top:12px}
footer nav a{color:var(--ink);text-decoration:none;font-size:14px}

/* ---------- Selector de paleta (solo maqueta) ---------- */
.pal{position:fixed;right:10px;top:50%;transform:translateY(-50%);z-index:60;background:var(--paper);border:1px solid var(--line);box-shadow:0 8px 28px rgba(12,27,29,.22);padding:8px 6px;border-radius:4px;display:flex;flex-direction:column;align-items:center;gap:6px;font-size:12px}
.pal .opts{flex-direction:column}
.pal-name{display:none}
.pal b{font:500 10.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);white-space:nowrap}
.pal .opts{display:flex;gap:4px}
.pal button{display:inline-flex;align-items:center;gap:5px;background:transparent;border:1px solid transparent;border-radius:3px;padding:4px 6px;cursor:pointer;font:600 12px var(--mono);color:var(--ink);min-height:32px}
.pal button[aria-pressed="true"]{border-color:var(--ink);background:var(--sand)}
.pal .sw{display:inline-flex;flex:none}
.pal .sw i{width:10px;height:18px;display:block}
.pal-name{font:500 11px var(--sans);color:var(--muted);min-width:118px}

@media (max-width: 960px){
  .facts.f4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ops-head,.coast-grid,.plano-grid,.planta-grid,.band-grid,.contact-grid,.foot-grid{grid-template-columns:minmax(0,1fr)}
  .ops{grid-template-columns:minmax(0,1fr)}
  .flow{grid-template-columns:minmax(0,1fr)}
  .flow li+li{padding-left:0;border-left:0}
  .flow li{padding-right:0}
  .hero-bar,.stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hero-bar div:nth-child(3),.stats div:nth-child(3){border-left:0;padding-left:0}
  .hero-bar div:nth-child(n+3),.stats div:nth-child(n+3){border-top:1px solid rgba(217,203,174,.4)}
  .gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
  .band-mark{max-width:300px}
}
@media (max-width: 640px){
  .top .wrap{gap:10px;min-height:60px}
  .nav{order:3;width:100%;gap:0;justify-content:space-between}
  .nav a{padding:6px 6px;font-size:13.5px}
  .nav a::after{left:6px;right:6px}
  .hero-inner,.page-hero .hero-inner{padding-top:150px}
  .terms,form,.planta-media,.facts,.legal-id{grid-template-columns:minmax(0,1fr)}
  .terms div+div{border-left:0;border-top:1px solid var(--line)}
  .planta-media .wide,.gallery .wide{grid-column:auto}
  .gallery{grid-template-columns:minmax(0,1fr)}
  .ficha dl{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pal{width:auto;right:16px}
  .hero-media.empty .ph-tag{top:120px}
}

/* ================= v3 · contenido para inversionistas ================= */
.thesis{list-style:none;margin:48px 0 0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:3px solid var(--acc)}
.thesis li{padding:22px 18px 8px 0;min-width:0}
.thesis li+li{padding-left:18px;border-left:1px solid var(--line)}
.thesis .n,.steps .n,.phases .n{font:500 12px var(--mono);letter-spacing:.12em;color:var(--acc)}
.thesis h3{font-size:20px;margin:10px 0 10px}
.thesis p{font-size:14.5px;color:var(--muted)}
.people{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:40px}
.people article{border-top:1px solid var(--line);padding-top:18px}
.people .tag{font:500 11px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--acc)}
.people h3{font-size:21px;margin:8px 0 8px}
.people p{font-size:14.5px;color:var(--muted)}
/* visor */
.viewer{margin-top:40px}
.vtabs{display:flex;flex-wrap:wrap;gap:6px;border-bottom:1px solid var(--line);padding-bottom:12px}
.vtabs button{font:500 13px var(--sans);background:transparent;border:1px solid var(--line);color:var(--ink);padding:8px 14px;border-radius:2px;cursor:pointer;min-height:38px}
.vtabs button:hover{border-color:var(--acc)}
.vtabs button[aria-selected="true"]{background:var(--caleta);border-color:var(--caleta);color:var(--paper)}
.vstage{margin-top:18px}
.vlayer{display:none;margin:0}
.vlayer.on{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(20px,3vw,40px);align-items:start}
.vimg{display:block;background:var(--night);border:1px solid var(--line);aspect-ratio:var(--ar);max-height:80svh}
.vimg img{display:block;width:100%;height:100%;object-fit:contain}
.vlayer figcaption{font-size:15.5px;color:var(--muted);border-top:3px solid var(--acc);padding-top:16px}
a.dl{display:inline-flex;align-items:center;gap:10px;font:600 14.5px var(--sans);color:var(--caleta);text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:3px}
a.dl::before{content:"↓";font-family:var(--mono);color:var(--acc)}
a.dl[target="_blank"]::before{content:"↗"}
a.dl:hover{border-color:var(--acc);color:var(--acc)}
/* tablas */
.dtable-wrap{overflow-x:auto;margin-top:32px;border-top:1px solid var(--line)}
.dtable{width:100%;border-collapse:collapse;font-size:15px;min-width:560px}
.dtable th{font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:left;padding:14px 14px 10px 0;border-bottom:1px solid var(--line);vertical-align:bottom}
.dtable td{padding:14px 14px 14px 0;border-bottom:1px solid var(--line);vertical-align:top}
.dtable td:first-child{font-weight:600;font-family:var(--serif);font-size:16.5px;min-width:160px}
.dtable.num td:last-child,.dtable.num th:last-child{text-align:right;font-variant-numeric:tabular-nums;padding-right:0}
.dtable.num{min-width:0}
.dtable.num td:first-child{font-family:var(--sans);font-weight:400;font-size:15px}
/* veta y columna */
.veta-card{background:var(--paper);border:1px solid var(--line);padding:22px 22px 18px}
.column-fig{margin:0}
.column-fig svg{width:100%;height:auto;display:block;border:1px solid var(--line)}
.column-fig figcaption{font-size:13.5px;color:var(--muted);margin-top:10px}
/* fases */
.phases{list-style:none;margin:44px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.phases>li{background:var(--paper);border:1px solid var(--line);border-top:3px solid var(--acc);padding:22px 22px 20px;min-width:0}
.phases h3{margin:8px 0 12px}
.phases ul{margin:0;padding-left:18px;font-size:14.5px;color:var(--muted);display:grid;gap:6px}
.phases .out{display:block;margin-top:14px;font:500 12.5px var(--mono);color:var(--ink)}
/* archivo */
.archive{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.archive figure{margin:0}
.archive .a-wide{grid-column:span 3}
.archive a{display:block;background:var(--night)}
.archive img{display:block;width:100%;height:auto;max-height:520px;object-fit:cover}
.archive .a-wide img{object-fit:contain;max-height:560px;margin:0 auto}
.archive figcaption{font-size:13.5px;color:var(--muted);margin-top:8px}
/* pasos planta */
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:44px;border-top:1px solid var(--line)}
.steps article{padding:22px 22px 24px 0;border-bottom:1px solid var(--line)}
.steps article:not(:nth-child(3n+1)){padding-left:22px;border-left:1px solid var(--line)}
.steps h3{margin:8px 0 10px;font-size:20px}
.steps p{font-size:14.5px;color:var(--muted)}
/* calculadora */
.calc{display:grid;gap:18px;background:var(--paper);border:1px solid var(--line);padding:clamp(18px,3vw,32px)}
.calc label{display:grid;grid-template-columns:1fr auto;gap:6px 12px;align-items:baseline}
.calc label span{font:500 12px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.calc output{font:600 18px var(--serif);color:var(--ink);font-variant-numeric:tabular-nums}
.calc input[type=range]{grid-column:1/-1;width:100%;accent-color:var(--acc);height:28px}
.calc-out{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--line);margin-top:6px}
.calc-out div{padding:14px 12px 14px 0;border-bottom:1px solid var(--line)}
.calc-out div:nth-child(2n){padding-left:14px;border-left:1px solid var(--line)}
.calc-out b{display:block;font:600 30px/1.1 var(--serif);color:var(--acc);font-variant-numeric:tabular-nums}
.calc-out span{font-size:13.5px;color:var(--muted)}
/* proceso inversionistas */
.flow.flow6{grid-template-columns:repeat(6,minmax(0,1fr))}
/* sala de datos */
.room{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:40px}
.room>div{border-top:3px solid var(--acc);padding-top:16px}
.room h3{margin-bottom:10px}
.room ul{list-style:none;margin:0;padding:0}
.room li{padding:11px 0;border-bottom:1px solid var(--line);font-size:15px;display:flex;flex-wrap:wrap;gap:4px 10px;justify-content:space-between}
.room li em{font:500 11px var(--mono);font-style:normal;letter-spacing:.06em;text-transform:uppercase;color:var(--acc);align-self:center}
.room li em.todo{color:var(--ocre)}
.nots{list-style:none;margin:0;padding:0;display:grid;gap:0;border-top:1px solid var(--line)}
.nots li{padding:16px 0 16px 34px;border-bottom:1px solid var(--line);position:relative;font-size:15.5px}
.nots li::before{content:"";position:absolute;left:0;top:26px;width:18px;height:2px;background:var(--acc)}
.faqs{border-top:1px solid var(--line)}
.faq{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;padding:18px 36px 18px 0;font:600 18px/1.35 var(--serif);position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:4px;top:16px;font:400 24px var(--sans);color:var(--acc)}
.faq[open] summary::after{content:"–"}
.faq div{padding:0 0 20px;color:var(--muted);font-size:15.5px;max-width:70ch}
@media (max-width: 960px){
  .thesis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .thesis li{padding-left:0 !important;border-left:0 !important;border-bottom:1px solid var(--line);padding-bottom:18px}
  .thesis li:nth-child(2n){padding-left:18px !important;border-left:1px solid var(--line) !important}
  .people{grid-template-columns:repeat(2,minmax(0,1fr))}
  .vlayer.on{grid-template-columns:minmax(0,1fr)}
  .phases,.room{grid-template-columns:minmax(0,1fr)}
  .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .steps article{padding-left:0 !important;border-left:0 !important}
  .steps article:nth-child(2n){padding-left:22px !important;border-left:1px solid var(--line) !important}
  .flow.flow6{grid-template-columns:repeat(3,minmax(0,1fr))}
  .archive{grid-template-columns:repeat(2,minmax(0,1fr))}
  .archive .a-wide{grid-column:span 2}
}
@media (max-width: 640px){
  .thesis,.people,.steps,.archive{grid-template-columns:minmax(0,1fr)}
  .thesis li:nth-child(2n),.steps article:nth-child(2n){padding-left:0 !important;border-left:0 !important}
  .archive .a-wide{grid-column:auto}
  .flow.flow6{grid-template-columns:repeat(2,minmax(0,1fr))}
  .calc-out{grid-template-columns:minmax(0,1fr)}
  .calc-out div:nth-child(2n){padding-left:0;border-left:0}
  .vtabs button{flex:1 1 auto}
}
.archive figure:not(.a-wide) a{aspect-ratio:4/3;overflow:hidden}
.archive figure:not(.a-wide) img{height:100%;max-height:none}
form.calc{grid-template-columns:minmax(0,1fr);gap:18px}

/* ---- v4 · respaldo registral ---- */
.ficha-doc{display:inline-block;margin-top:12px;font:600 13.5px var(--sans);color:var(--caleta);text-decoration:none;border-bottom:1px solid var(--line)}
.ficha-doc::after{content:" ↓";font-family:var(--mono);color:var(--acc)}
.ficha-doc:hover{color:var(--acc);border-color:var(--acc)}
.mensura{margin:0;background:var(--paper);border:1px solid var(--line);padding:clamp(10px,1.6vw,18px)}
.mensura-img{display:block;aspect-ratio:2400/1364;overflow:hidden;background:#fff}
.mensura-img img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .3s}
.mensura-img:hover img{transform:scale(1.01)}
.mensura figcaption{font-size:14px;color:var(--muted);margin-top:10px}
.acta{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);gap:40px;align-items:start}
.acta dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;margin:0}
.acta dl>div{padding:14px 0;border-top:1px solid var(--line)}
.acta dt{font:500 11px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--acc);margin-bottom:4px}
.acta dd{margin:0;font-size:15px}
.reg-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start}
.reg-card{background:var(--paper);border:1px solid var(--line);border-top:3px solid var(--acc);padding:22px 22px 18px;display:flex;flex-direction:column;gap:16px;scroll-margin-top:96px}
.reg-card:target{box-shadow:0 0 0 2px var(--acc-soft)}
.reg-card header{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.reg-meta{font-size:14px;color:var(--muted);line-height:1.5}
.tl{list-style:none;margin:0;padding:0 0 0 14px;border-left:1px solid var(--line)}
.tl li{position:relative;padding:0 0 12px 12px;font-size:14.5px;line-height:1.45}
.tl li::before{content:"";position:absolute;left:-19px;top:6px;width:9px;height:9px;border-radius:50%;background:var(--acc)}
.tl li.next::before{background:var(--paper);border:1.5px dashed var(--ocre)}
.tl li.next{color:var(--muted);padding-bottom:0}
.tl time{display:block;font:500 11.5px var(--mono);letter-spacing:.06em;color:var(--acc)}
.tl li.next time{display:none}
.docs{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.docs li{border-bottom:1px solid var(--line)}
a.doc{display:flex;gap:12px;align-items:flex-start;padding:11px 0;text-decoration:none;color:var(--ink)}
a.doc:hover{color:var(--acc)}
.doc-ic{flex:none;font:600 10px var(--mono);letter-spacing:.06em;color:var(--on-acc);background:var(--acc);padding:4px 5px;border-radius:2px;margin-top:2px}
.doc-t{font-weight:600;font-size:15px;line-height:1.35}
.doc-t small{display:block;font-weight:400;font-size:12.5px;color:var(--muted);margin-top:2px}
.vcode summary{cursor:pointer;font:500 12px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--caleta)}
.vcode dl{margin:10px 0 0;display:grid;gap:8px}
.vcode dt{font-size:12.5px;color:var(--muted)}
.vcode dd{margin:0;font-size:13.5px;word-break:break-all}
.reg-foot{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:start;border-top:1px solid var(--line);padding-top:24px}
.verify h4{font:500 12px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--acc);margin:0 0 8px}
.verify ul{margin:0;padding-left:18px;font-size:14.5px}
.verify li{margin:4px 0}
.room li a{color:var(--ink)}
.room li a:hover{color:var(--acc)}
@media (max-width:960px){
  .reg-grid{grid-template-columns:minmax(0,1fr)}
  .acta,.reg-foot{grid-template-columns:minmax(0,1fr);gap:24px}
}
@media (max-width:640px){
  .acta dl{grid-template-columns:minmax(0,1fr)}
}

/* ---- v5 · planta: visión, agua, Bombonera 1, La Negra ---- */
.hero-credit{position:absolute;right:clamp(16px,4vw,48px);bottom:14px;z-index:2;margin:0;font:500 11px/1.4 var(--mono);letter-spacing:.04em;color:var(--on-dark-muted)}
.reg-thumb{display:block;background:#fff;border:1px solid var(--line);aspect-ratio:1100/1000;overflow:hidden}
.reg-thumb img{display:block;width:100%;height:auto}
.reg-thumb:hover{border-color:var(--acc)}
.vision{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:start}
.vsteps{list-style:none;counter-reset:v;margin:6px 0 0;padding:0;border-top:1px solid var(--line)}
.vsteps li{counter-increment:v;display:grid;grid-template-columns:34px minmax(0,1fr);column-gap:10px;padding:11px 0;border-bottom:1px solid var(--line);font-size:15px;color:var(--muted)}
.vsteps li::before{content:counter(v,decimal-leading-zero);grid-row:1/3;font:500 12px var(--mono);color:var(--acc);padding-top:3px}
.vsteps li b{display:block;color:var(--ink);font-weight:600}
.vision-fig{margin:0;background:var(--paper);border:1px solid var(--line);padding:clamp(8px,1.2vw,14px);position:sticky;top:92px}
.vision-fig img{display:block;width:100%;height:auto}
.vision-fig figcaption,.cadena-fig figcaption,.negra figcaption{font-size:13.5px;color:var(--muted);margin-top:8px}
.cadena-fig{margin:0;background:var(--paper);border:1px solid var(--line);padding:clamp(10px,2vw,24px)}
.cadena{display:block;width:100%;height:auto;font-family:var(--sans)}
.cadena .c-sea{fill:var(--caleta);opacity:.12}
.cadena .c-sea-t{fill:var(--caleta);font:500 13px var(--mono);letter-spacing:.2em;text-anchor:middle;opacity:.7}
.cadena .c-node rect{fill:var(--sand);stroke:var(--line);stroke-width:1.5}
.cadena .c-plan rect{stroke:var(--ocre);stroke-dasharray:6 4}
.cadena .c-main rect{fill:var(--acc);stroke:var(--acc)}
.cadena text{text-anchor:middle}
.cadena .c-h{font:600 19px var(--serif);fill:var(--ink)}
.cadena .c-s{font-size:13.5px;fill:var(--muted)}
.cadena .c-h-inv{fill:var(--on-acc)}.cadena .c-s-inv{fill:var(--on-acc);opacity:.9}
.cadena .c-l{font:500 12px var(--mono);letter-spacing:.06em;fill:var(--caleta);text-transform:uppercase}
.cadena .c-left{text-anchor:start}
.cadena .c-m{font-size:13px;fill:var(--acc);font-weight:600}
.cadena .c-pipe{stroke:var(--caleta);stroke-width:5;stroke-dasharray:14 7}
.cadena .c-flow{stroke:var(--acc);stroke-width:2.5}
.cadena .c-road{stroke:var(--muted);stroke-width:2;stroke-dasharray:3 5}
.cadena .c-arrow{fill:var(--caleta)}
.negra{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:20px;align-items:start}
.negra figure{margin:0;background:var(--paper);border:1px solid var(--line);padding:10px}
.negra-img{display:block;background:#fff}
.negra-img img{display:block;width:100%;height:auto}
@media (max-width:960px){
  .vision,.negra{grid-template-columns:minmax(0,1fr)}
  .vision-fig{position:static}
}
.stlist{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.stlist li{display:flex;justify-content:space-between;align-items:center;gap:8px 16px;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid var(--line);font-size:15px}
.stlist li span{flex:1 1 220px}
.cadena-list{display:none;list-style:none;margin:0;padding:0}
.cadena-list li{border-left:3px solid var(--line);padding:8px 0 10px 14px;font-size:14.5px;color:var(--muted);position:relative}
.cadena-list li b{display:block;color:var(--ink)}
.cadena-list li.main{border-left-color:var(--acc)}
.cadena-list li+li::before{content:"↓";position:absolute;left:-10px;top:-12px;font:500 12px var(--mono);color:var(--acc);background:var(--paper)}
@media (max-width:640px){ .cadena{display:none} .cadena-list{display:block} }
.stlist .chip{flex:none}
.fundamento{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(24px,4vw,48px);background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--acc);padding:clamp(18px,3vw,32px)}
.fundamento>div{display:flex;flex-direction:column;gap:12px}
.fundamento p{font-size:15.5px}
@media (max-width:960px){.fundamento{grid-template-columns:minmax(0,1fr)}}

.planta-media .slot:only-child{grid-column:1/-1}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.slot.empty{display:none}
