:root{
  --canvas:#0B111A;--canvas-deep:#070C13;--panel:#141C28;--panel-line:rgba(191,150,78,.20);
  --accent:#BF964E;--accent-hover:#D8AE66;--lamp:#FFD9A3;
  --text-primary:#F3F0E9;--text-secondary:#A6B1C0;
  --display:"Archivo",system-ui,-apple-system,"Helvetica Neue",sans-serif;
  --wordmark:"Bodoni Moda",Georgia,serif;
  --body:"Jost",system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"DM Mono",ui-monospace,Menlo,monospace;
  --ease:cubic-bezier(.22,.61,.36,1);
  --gut:clamp(20px,5vw,64px);--maxw:1180px;
}
*,*::before,*::after{box-sizing:border-box}
html{overflow-x:hidden;overflow-x:clip;-webkit-text-size-adjust:100%}
body{margin:0;overflow-x:hidden;overflow-x:clip;background:var(--canvas);color:var(--text-primary);
  font-family:var(--body);font-weight:300;font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
h1,h2,h3{margin:0;font-family:var(--display);font-weight:700;line-height:1.04;letter-spacing:-.021em}
p{margin:0}
a{color:inherit}
:focus-visible{outline:2px solid var(--accent-hover);outline-offset:3px}
.skip{position:absolute;left:-9999px;top:0;z-index:200;background:var(--accent);color:#12100E;padding:12px 20px;font-weight:500}
.skip:focus{left:0}
.wrap{width:100%;max-width:var(--maxw);margin:0 auto;padding-inline:var(--gut)}
.wrap.narrow{max-width:820px}

.nav{position:sticky;top:0;z-index:90;background:rgba(9,14,22,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--panel-line)}
.nav .row{display:flex;align-items:center;gap:18px;height:70px;max-width:var(--maxw);margin:0 auto;padding-inline:var(--gut)}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;margin-right:auto}
.brand .stars{width:15px;height:24px;color:var(--accent);flex:0 0 auto}
.brand .nm{font-family:var(--wordmark);font-weight:500;font-size:18px;letter-spacing:.10em;line-height:1;display:block}
.brand .sub{display:block;font-size:8.5px;letter-spacing:.30em;color:var(--accent);margin-top:4px}
.navtel{font-family:var(--mono);font-size:14px;text-decoration:none;color:var(--text-primary);white-space:nowrap}
.navtel:hover{color:var(--accent-hover)}
@media (max-width:700px){.navtel{display:none}}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--body);
  font-size:13.5px;font-weight:500;letter-spacing:.13em;text-transform:uppercase;padding:15px 28px;
  border-radius:2px;text-decoration:none;border:1px solid var(--accent);background:var(--accent);color:#12100E;
  transition:background .35s var(--ease),transform .35s var(--ease);white-space:nowrap}
.btn:hover{background:var(--accent-hover);transform:translateY(-2px)}
.btn.sm{padding:11px 20px;font-size:12px}
@media (pointer:coarse){.btn{min-height:44px}}

.crumbs{max-width:var(--maxw);margin:0 auto;padding:22px var(--gut) 0;font-family:var(--mono);
  font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-secondary)}
.crumbs a{color:var(--text-secondary);text-decoration:none}
.crumbs a:hover{color:var(--accent)}
.crumbs span[aria-current]{color:var(--accent)}

.kicker{font-family:var(--mono);font-size:11.5px;letter-spacing:.24em;text-transform:uppercase;
  color:var(--accent);display:flex;align-items:center;gap:11px;margin-bottom:20px}
.kicker::before{content:"";width:26px;height:1px;background:var(--accent);flex:0 0 auto}

.lochero{padding:clamp(40px,7vh,72px) 0 clamp(30px,5vh,48px)}
.lochero h1{font-size:clamp(2.1rem,5.4vw,3.7rem);max-width:16ch}
.lochero .lede{margin-top:24px;font-size:19px;line-height:1.7;color:var(--text-secondary);max-width:60ch}
.lochero .row,.cta .row{margin-top:32px;display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.tel{font-family:var(--mono);font-size:15px;text-decoration:none;color:var(--lamp);padding:12px 0}
.tel:hover{color:#fff}

.sec{padding-block:clamp(48px,7vh,80px)}
.sec.alt{background:var(--canvas-deep);border-block:1px solid var(--panel-line)}
.sec h2{font-size:clamp(1.7rem,3.8vw,2.6rem);max-width:18ch;margin-bottom:24px}
.body{font-size:17.5px;line-height:1.75;color:var(--text-secondary);max-width:64ch;margin-bottom:18px}
.note{margin-top:26px;font-size:15px;line-height:1.7;color:var(--text-secondary);opacity:.85}
.shot{width:100%;border-radius:3px;border:1px solid var(--panel-line)}

.pts{list-style:none;margin:0;padding:0;display:grid;gap:20px}
.pts li{position:relative;padding-left:26px;font-size:17px;line-height:1.72;color:var(--text-secondary)}
.pts li::before{content:"";position:absolute;left:0;top:12px;width:9px;height:9px;
  background:var(--accent);clip-path:polygon(50% 0,58% 42%,100% 50%,58% 58%,50% 100%,42% 58%,0 50%,42% 42%)}
.pts li strong{color:var(--text-primary);font-weight:500}

.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:28px;margin-top:36px}
.steps > div{border-top:1px solid var(--panel-line);padding-top:22px}
.steps .n{font-family:var(--mono);font-size:11.5px;letter-spacing:.2em;color:var(--accent);display:block;margin-bottom:12px}
.steps h3{font-size:1.2rem;margin-bottom:8px}
.steps p{font-size:15.5px;line-height:1.62;color:var(--text-secondary)}

.qs{border-top:1px solid var(--panel-line)}
.q{border-bottom:1px solid var(--panel-line)}
.q summary{list-style:none;cursor:pointer;padding:22px 44px 22px 0;position:relative;
  font-family:var(--display);font-weight:600;font-size:clamp(1.02rem,1.9vw,1.28rem);line-height:1.36}
.q summary::-webkit-details-marker{display:none}
.q summary:hover{color:var(--accent)}
.q summary::after{content:"";position:absolute;right:6px;top:50%;width:12px;height:12px;
  border-right:1.5px solid var(--accent);border-bottom:1.5px solid var(--accent);
  transform:translateY(-70%) rotate(45deg);transition:transform .4s var(--ease)}
.q[open] summary::after{transform:translateY(-25%) rotate(-135deg)}
.q .a{padding:0 0 24px;color:var(--text-secondary);font-size:16.5px;line-height:1.72;max-width:64ch}
@media (pointer:coarse){.q summary{padding-block:26px}}

.cta{background:var(--canvas-deep);border-block:1px solid var(--panel-line)}
.towns{display:flex;flex-wrap:wrap;gap:10px}
.towns a{display:inline-flex;align-items:center;min-height:44px;padding:10px 18px;border:1px solid var(--panel-line);
  border-radius:2px;text-decoration:none;font-size:14.5px;color:var(--text-secondary);transition:all .3s var(--ease)}
.towns a:hover{border-color:var(--accent);color:var(--accent-hover)}

footer{background:var(--canvas-deep);border-top:1px solid var(--panel-line);padding-block:48px 28px}
.fgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:32px}
.ftitle{font-family:var(--mono);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:14px}
.fp{font-size:15px;line-height:1.7;color:var(--text-secondary)}
.fp a{color:var(--text-secondary);text-decoration:none}
.fp a:hover{color:var(--accent-hover)}
.fbot{margin-top:36px;padding-top:22px;border-top:1px solid rgba(150,160,178,.13);
  font-size:12.5px;line-height:1.6;color:var(--text-secondary);opacity:.7}

@media (prefers-reduced-motion:reduce){*{transition-duration:.001ms !important;animation-duration:.001ms !important}}
