.urg{background:var(--steel);color:#fff;font-size:.9rem;transition:background .3s}.urg.night{background:#B3261E}
.urg-in{display:flex;justify-content:space-between;align-items:center;gap:1rem;min-height:44px}.urg p{margin:0}.urg a{font-weight:700}
.sw{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-weight:600}.sw input{appearance:none;width:44px;height:24px;border-radius:99px;background:rgba(255,255,255,.35);position:relative;cursor:pointer;margin:0}
.sw input::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:left .2s}.sw input:checked{background:#22272B}.sw input:checked::after{left:23px}
.sw input:focus-visible{outline:3px solid #fff;outline-offset:2px}
.hd{border-bottom:1px solid #e1e3e5;background:#fff;position:sticky;top:0;z-index:40}
.hd-in{display:flex;align-items:center;gap:1.5rem;min-height:68px}
.logo{display:flex;align-items:center;gap:.6rem;font:900 1.35rem var(--fh);text-decoration:none;text-transform:uppercase;letter-spacing:-.01em;margin:0}
.mark{display:grid;place-items:center;width:2.4rem;height:2.4rem;background:var(--accent);color:var(--ink);font:900 1rem var(--fh);border-radius:.3rem}
.nav{display:none;gap:1.5rem;margin-left:auto;font-weight:600}.nav a{text-decoration:none;padding:.5rem 0}.nav a:hover{box-shadow:inset 0 -3px var(--accent)}
.hd .lang{margin-left:auto}@media(min-width:960px){.nav{display:flex}.hd .lang{margin-left:0}}
.hero{background:var(--ink);color:#fff;padding:2.5rem 0 3rem}
.hero-in{display:grid;gap:1.5rem}
.pre{font-weight:600;color:var(--accent);font-size:.9rem;text-transform:uppercase;letter-spacing:.06em}
.hero h1{font-size:clamp(2.8rem,9vw,5.5rem);font-weight:900;letter-spacing:-.03em;text-transform:uppercase;margin:0}
.lead{font-size:1.3rem;margin:.5rem 0 0;max-width:30ch}
.hero-img{position:relative}.hero-img img{border-radius:.5rem;aspect-ratio:16/9;object-fit:cover;width:100%}
.badge{position:absolute;left:.75rem;bottom:-1rem;background:var(--accent);color:var(--ink);padding:.8rem 1rem;font-weight:700;border-radius:.4rem;margin:0;display:grid}.badge b{font:900 2rem/1 var(--fh)}
.tiles{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem;grid-column:1/-1}
.tile{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:.7rem;text-align:left;background:#2F363B;color:#fff;border:2px solid #3d454b;border-radius:.5rem;padding:1rem;cursor:pointer;min-height:96px;transition:border-color .15s,background .15s}
.tile .ico{width:2rem;height:2rem;color:var(--accent)}.tile .go{display:none}
.tile b{display:block;font:800 1.08rem var(--fh)}.tile small{display:block;color:#c9cdd1;font-size:.84rem;margin-top:.2rem}
.tile:hover,.tile:focus-visible{border-color:var(--accent);background:#343c42}
@media(min-width:900px){.hero-in{grid-template-columns:1fr 1fr;align-items:center}.tiles{grid-template-columns:repeat(3,1fr)}.tile{grid-template-columns:auto 1fr auto;padding:1.3rem}.tile .go{display:block;width:1.4rem;color:#fff;align-self:center}}
.steps-bar{background:var(--accent);color:var(--ink)}.sb{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;padding:.9rem 0}.sb p{margin:0;font-weight:700;display:flex;gap:.5rem;align-items:center;font-size:.92rem}.sb b{display:grid;place-items:center;flex:none;width:1.8rem;height:1.8rem;border-radius:50%;background:var(--ink);color:var(--accent)}
.sec{padding:4rem 0}.sec-alt{background:var(--bg2)}.sec h2{font-size:clamp(2rem,5vw,3rem);font-weight:900;letter-spacing:-.02em;text-transform:uppercase}
.zona{display:grid;gap:2rem}@media(min-width:900px){.zona{grid-template-columns:1fr 1fr;align-items:start}}
.town{background:var(--bg2);padding:1.25rem;border-radius:.5rem;border-left:6px solid var(--accent)}.town label{font:800 1.2rem var(--fh);display:block;margin-bottom:.6rem}
.town input{width:100%;min-height:52px;border:2px solid var(--ink);border-radius:.35rem;padding:.6rem .8rem;font-size:1.05rem}
.town-r{margin:.6rem 0 0;font-weight:700;min-height:1.6em}.town-r.ok{color:#1d6b33}.town-r.no{color:#8a4b00}
.towns{display:grid;grid-template-columns:repeat(2,1fr);gap:.2rem 1rem}.towns li{display:flex;gap:.4rem;align-items:center;padding:.45rem 0;border-bottom:1px solid #e1e3e5}.towns .ico{color:var(--steel)}
.towns li.hit{background:#fff3c4;font-weight:700}
.head-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.25rem}
.filters{display:flex;gap:.4rem;flex-wrap:wrap}.filters button{min-height:44px;padding:.4rem 1rem;border:2px solid var(--ink);background:#fff;font-weight:700;cursor:pointer;border-radius:.35rem}.filters [aria-pressed=true]{background:var(--ink);color:#fff}
.proj{grid-template-columns:repeat(2,1fr)}@media(min-width:900px){.proj{grid-template-columns:repeat(4,1fr)}}.proj img{aspect-ratio:4/3}.proj button[hidden]{display:none}
.how{display:grid;gap:1rem;counter-reset:n}@media(min-width:900px){.how{grid-template-columns:repeat(3,1fr)}}
.how li{border:2px solid var(--ink);border-radius:.5rem;padding:1.5rem;position:relative}.how span{font:900 3.5rem/1 var(--fh);color:var(--accent);-webkit-text-stroke:2px var(--ink)}.how h3{font-size:1.25rem;margin-top:.5rem}
.sec-dark{background:var(--ink);color:#fff}.sec-dark .rev{background:#2F363B;color:#fff}.sec-dark .stars{color:var(--accent)}.qr-row{margin-top:2rem;max-width:36rem}
.quote{display:grid;gap:2.5rem}@media(min-width:900px){.quote{grid-template-columns:.8fr 1.2fr}}
.call{font:900 1.6rem var(--fh);display:flex;gap:.5rem;align-items:center}.call a{text-decoration:none}
.qform{display:grid;grid-template-columns:1fr 1fr;gap:1rem;background:var(--bg2);padding:1.5rem;border-radius:.5rem;border-top:6px solid var(--accent)}
.qform label{display:grid;gap:.35rem;font-weight:700}.qform input,.qform select,.qform textarea{min-height:50px;border:2px solid #b9bfc4;border-radius:.35rem;padding:.55rem .7rem;background:#fff}
.qform .full{grid-column:1/-1}.btns{display:flex;gap:.6rem;flex-wrap:wrap}.qform.flash{box-shadow:0 0 0 4px var(--accent)}
@media(max-width:560px){.qform{grid-template-columns:1fr}}
.visit{display:grid;gap:2rem}@media(min-width:900px){.visit{grid-template-columns:1fr 1fr}}
.map .big-pin{width:2.5rem;height:2.5rem;color:var(--steel)}.map .btn{background:var(--ink);color:#fff}
.foot{background:#16191C;color:#e7e9eb;padding:3.5rem 0 1.5rem}.foot .demo-note{margin-top:2rem}
.hero :focus-visible,.sec-dark :focus-visible,.foot :focus-visible{outline-color:var(--accent)}
