:root{
  --bg:#f8fafc;--surface:rgba(255,255,255,.86);--solid:#fff;--text:#0f172a;--muted:#475569;--line:rgba(15,23,42,.12);
  --brand:#0f766e;--brand2:#2563eb;--brand3:#14b8a6;--danger:#b91c1c;--focus:#f59e0b;
  --shadow:0 24px 70px rgba(15,23,42,.14);--soft:0 14px 38px rgba(15,23,42,.10);--r:32px;--font-scale:1;
}
*{box-sizing:border-box}html{font-size:calc(16px*var(--font-scale));scroll-behavior:smooth}body{margin:0;color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.55;background:radial-gradient(circle at top left,rgba(20,184,166,.24),transparent 36rem),radial-gradient(circle at top right,rgba(37,99,235,.16),transparent 38rem),linear-gradient(135deg,#f8fafc 0%,#ecfeff 46%,#eff6ff 100%)}
body.high-contrast{--bg:#050505;--surface:#0b1220;--solid:#111827;--text:#fff;--muted:#e5e7eb;--line:#facc15;--brand:#facc15;--brand2:#22d3ee;--brand3:#fde047;--danger:#ff6b6b;--focus:#fde047;--shadow:none;--soft:none;background:#050505;color:#fff}
a{color:inherit}.site-shell{width:min(1180px,calc(100% - 28px));margin:0 auto;padding:18px 0 30px}.skip-link{position:fixed;top:12px;left:12px;z-index:999;transform:translateY(-180%);padding:14px 18px;border-radius:14px;background:#111827;color:#fff;font-weight:900}.skip-link:focus{transform:translateY(0)}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:5px solid var(--focus);outline-offset:5px;border-radius:14px}
.topbar{position:sticky;top:12px;z-index:20;display:flex;justify-content:space-between;gap:16px;align-items:center;padding:12px;border:1px solid var(--line);background:rgba(255,255,255,.78);backdrop-filter:blur(20px);border-radius:999px;box-shadow:var(--soft)}.high-contrast .topbar{background:#0b1220}.brand{display:inline-flex;gap:12px;align-items:center;text-decoration:none;min-height:56px}.brand-mark{display:grid;place-items:center;width:54px;height:54px;color:#fff;background:linear-gradient(135deg,var(--brand),var(--brand2));border-radius:18px}.brand-mark svg{width:34px;height:34px;fill:currentColor}.high-contrast .brand-mark{color:#050505}.brand strong,.brand small{display:block}.brand strong{font-size:1.04rem;letter-spacing:-.02em}.brand small{color:var(--muted);font-weight:750}.topbar-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.language-switcher,.utility-nav,.hero-actions,.voice-panel,.step-controls,.quick-actions{display:flex;gap:10px;flex-wrap:wrap}.language-link{min-height:44px;min-width:48px;display:inline-flex;align-items:center;justify-content:center;padding:10px 13px;border:1px solid var(--line);border-radius:999px;background:var(--solid);text-decoration:none;font-weight:950}.language-link.is-active{background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff}.high-contrast .language-link.is-active{color:#050505}
.utility-button,.button{min-height:52px;border:0;border-radius:16px;padding:14px 18px;font:inherit;font-weight:850;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:transform .18s ease,box-shadow .18s ease}.utility-button{background:#eef2ff;color:#1e293b}.button:hover,.utility-button:hover,.language-link:hover{transform:translateY(-2px)}.button-primary{background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;box-shadow:0 14px 28px rgba(37,99,235,.22)}.button-secondary{border:1px solid var(--line);background:var(--solid);color:var(--text);box-shadow:var(--soft)}.button-ghost{border:1px solid var(--line);background:rgba(255,255,255,.52);color:var(--text)}.button-danger{background:var(--danger);color:#fff}.high-contrast .button-primary{color:#050505}.high-contrast .button-danger{background:#7f1d1d;color:#fff;border:1px solid #fff}
.hero,.qr-hero,.section,.trust-strip{margin-top:26px}.hero{position:relative;overflow:hidden;display:grid;grid-template-columns:1.05fr .95fr;gap:28px;min-height:560px;padding:clamp(28px,5vw,58px);border:1px solid var(--line);border-radius:var(--r);background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(240,253,250,.86));box-shadow:var(--shadow)}.high-contrast .hero{background:#0b1220}.hero-bg{position:absolute;inset:0;overflow:hidden;pointer-events:none}.orb{position:absolute;border-radius:999px;opacity:.75;animation:floatOrb 9s ease-in-out infinite}.orb-one{width:360px;height:360px;background:rgba(20,184,166,.22);top:-120px;right:22%}.orb-two{width:320px;height:320px;background:rgba(37,99,235,.14);bottom:-110px;right:-70px;animation-delay:-2s}.route-line{position:absolute;width:50%;height:260px;bottom:-40px;left:34%;border:24px solid rgba(20,184,166,.18);border-top:0;border-left:0;border-radius:0 0 160px 0;transform:rotate(-10deg)}.hero-content,.hero-visual{position:relative;z-index:1}.hero-content{align-self:center}.hero-visual{display:grid;place-items:center}.building-illustration{width:min(100%,560px);height:auto;filter:drop-shadow(0 26px 42px rgba(15,23,42,.18));animation:gentleRise 7s ease-in-out infinite}
.eyebrow{margin:0 0 10px;color:var(--brand);font-weight:950;text-transform:uppercase;letter-spacing:.12em;font-size:.82rem}h1,h2,h3,p{margin-top:0}h1{margin-bottom:18px;font-size:clamp(2.25rem,5vw,4.55rem);line-height:.98;letter-spacing:-.07em}h2{font-size:clamp(1.8rem,4vw,3rem);line-height:1.04;letter-spacing:-.055em}h3{font-size:1.3rem}.lead{max-width:64ch;color:var(--muted);font-size:clamp(1.15rem,2.2vw,1.38rem);font-weight:620}.section{padding:clamp(22px,4vw,38px);border:1px solid var(--line);border-radius:var(--r);background:var(--surface);box-shadow:var(--soft)}.section-heading{max-width:760px;margin-bottom:22px}.section-heading p{color:var(--muted);font-weight:680}.point-grid,.destination-grid{display:grid;gap:16px}.point-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.destination-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.point-card,.destination-card{position:relative;display:grid;gap:8px;min-height:190px;padding:22px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(135deg,#fff,#f8fafc);box-shadow:var(--soft);text-decoration:none;overflow:hidden}.destination-card{min-height:230px}.point-card:after,.destination-card:after{content:"";position:absolute;right:-36px;bottom:-56px;width:140px;height:140px;background:radial-gradient(circle,rgba(20,184,166,.18),transparent 68%);border-radius:50%}.point-card-icon,.destination-icon{display:grid;place-items:center;width:64px;height:64px;border-radius:20px;background:linear-gradient(135deg,#ccfbf1,#dbeafe);color:#0f766e;font-size:1.7rem;font-weight:950}.point-card-icon span,.destination-icon:before{content:"";width:32px;height:32px;background:currentColor;display:block;mask:center/contain no-repeat; -webkit-mask:center/contain no-repeat}.point-card-icon span{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5A2.5 2.5 0 1 1 12 6a2.5 2.5 0 0 1 0 5.5z'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5A2.5 2.5 0 1 1 12 6a2.5 2.5 0 0 1 0 5.5z'/%3E%3C/svg%3E")}.icon-door-open:before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 3h10a2 2 0 0 1 2 2v14h3v2H4v-2h2V5a2 2 0 0 1 2-2zm4 2v14h6V5zm3 7h2v2h-2z'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 3h10a2 2 0 0 1 2 2v14h3v2H4v-2h2V5a2 2 0 0 1 2-2zm4 2v14h6V5zm3 7h2v2h-2z'/%3E%3C/svg%3E")}.icon-route:before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 3a4 4 0 1 0 0 8h10a2 2 0 1 1 0 4H8a4 4 0 1 0 0 2h9a4 4 0 1 0 0-8H7a2 2 0 1 1 0-4h9V3zm0 14a2 2 0 1 1 0 4 2 2 0 0 1 0-4z'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 3a4 4 0 1 0 0 8h10a2 2 0 1 1 0 4H8a4 4 0 1 0 0 2h9a4 4 0 1 0 0-8H7a2 2 0 1 1 0-4h9V3zm0 14a2 2 0 1 1 0 4 2 2 0 0 1 0-4z'/%3E%3C/svg%3E")}.icon-accessibility:before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 4a2.2 2.2 0 1 0 0 4.4A2.2 2.2 0 0 0 12 4zm-6 6h12v2h-4v3.1A5 5 0 1 1 9.3 12H6zm5.1 2A3 3 0 1 0 14 15h2a5 5 0 0 1-4.9 4A5 5 0 0 1 9 9.5V12z'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 4a2.2 2.2 0 1 0 0 4.4A2.2 2.2 0 0 0 12 4zm-6 6h12v2h-4v3.1A5 5 0 1 1 9.3 12H6zm5.1 2A3 3 0 1 0 14 15h2a5 5 0 0 1-4.9 4A5 5 0 0 1 9 9.5V12z'/%3E%3C/svg%3E")}.icon-users:before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 12a4 4 0 1 0 0-8 4 4 0 0 0 0 8zm-8 9a8 8 0 0 1 16 0H4zm15.5-8.5A3.5 3.5 0 0 0 20 6a3.5 3.5 0 0 0-1.7 6.6A6.5 6.5 0 0 1 23 19h-3a10 10 0 0 0-.5-6.5zM5.7 12.6A3.5 3.5 0 1 1 4 6a3.5 3.5 0 0 1 .5 6.5A10 10 0 0 0 4 19H1a6.5 6.5 0 0 1 4.7-6.4z'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 12a4 4 0 1 0 0-8 4 4 0 0 0 0 8zm-8 9a8 8 0 0 1 16 0H4zm15.5-8.5A3.5 3.5 0 0 0 20 6a3.5 3.5 0 0 0-1.7 6.6A6.5 6.5 0 0 1 23 19h-3a10 10 0 0 0-.5-6.5zM5.7 12.6A3.5 3.5 0 1 1 4 6a3.5 3.5 0 0 1 .5 6.5A10 10 0 0 0 4 19H1a6.5 6.5 0 0 1 4.7-6.4z'/%3E%3C/svg%3E")}.icon-exit:before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 3h10v4h-2V5H6v14h6v-2h2v4H4zm10.5 5.5L16 7l5 5-5 5-1.5-1.5L17 13H9v-2h8z'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 3h10v4h-2V5H6v14h6v-2h2v4H4zm10.5 5.5L16 7l5 5-5 5-1.5-1.5L17 13H9v-2h8z'/%3E%3C/svg%3E")}.point-card-title,.destination-title{font-size:1.22rem;font-weight:950;letter-spacing:-.025em}.point-card-meta,.destination-kind,.destination-steps{color:#64748b;font-weight:850}.point-card-desc,.destination-description{color:var(--muted);font-weight:650}
.trust-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.trust-strip article{padding:22px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.72)}.trust-strip strong,.trust-strip span{display:block}.trust-strip strong{font-size:1.25rem;letter-spacing:-.03em}.trust-strip span{color:var(--muted);font-weight:650}.qr-hero{display:grid;grid-template-columns:1fr 360px;gap:18px;align-items:stretch}.qr-status-card,.help-card{padding:clamp(22px,4vw,38px);border:1px solid var(--line);border-radius:var(--r);background:rgba(255,255,255,.86);box-shadow:var(--shadow)}.qr-status-card h1 span{color:var(--brand)}.point-facts{display:grid;gap:12px;margin:22px 0}.point-facts div{display:grid;gap:4px;padding:18px;border:1px solid var(--line);border-radius:16px;background:rgba(248,250,252,.8)}.point-facts dt{color:#64748b;font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}.point-facts dd{margin:0;font-weight:760}.help-card{display:flex;flex-direction:column;justify-content:center;background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(254,242,242,.9))}.route-header{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:18px}.stepper{display:grid;gap:18px}.progress-wrap{height:16px;border-radius:999px;background:#dbeafe;overflow:hidden}.progress-bar{height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,var(--brand3),var(--brand2));transition:width .22s ease}.step-counter{color:var(--muted);font-weight:900}.step-card{min-height:240px;display:grid;align-content:center;gap:16px;padding:clamp(24px,5vw,54px);border-radius:var(--r);background:linear-gradient(135deg,rgba(15,118,110,.09),rgba(37,99,235,.08)),#fff;border:1px solid rgba(15,118,110,.18)}.step-badge{width:max-content;padding:8px 14px;border-radius:999px;background:#ccfbf1;color:#0f766e;font-weight:950}.step-text{margin:0;font-size:clamp(1.6rem,4.6vw,3rem);line-height:1.12;letter-spacing:-.05em;font-weight:920}.all-steps-card{padding:22px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.7)}.all-steps{display:grid;gap:10px;margin:0;padding-left:24px;color:var(--muted);font-weight:690}.footer{padding:22px 8px;color:var(--muted);font-weight:620;text-align:center}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.offline-card{max-width:780px;margin-inline:auto}
.high-contrast .hero,.high-contrast .button-secondary,.high-contrast .button-ghost,.high-contrast .utility-button,.high-contrast .language-link,.high-contrast .point-card,.high-contrast .destination-card,.high-contrast .section,.high-contrast .qr-status-card,.high-contrast .help-card,.high-contrast .trust-strip article,.high-contrast .step-card,.high-contrast .all-steps-card,.high-contrast .point-facts div{background:#0b1220!important;color:#fff!important;border-color:#facc15!important;box-shadow:none!important}.high-contrast .point-card-meta,.high-contrast .destination-kind,.high-contrast .destination-steps,.high-contrast .point-card-desc,.high-contrast .destination-description,.high-contrast .footer,.high-contrast .point-facts dt,.high-contrast .all-steps,.high-contrast .lead,.high-contrast .section-heading p{color:#e5e7eb!important}.high-contrast .point-card-icon,.high-contrast .destination-icon,.high-contrast .step-badge{background:#111827;color:#facc15;border:1px solid #facc15}.high-contrast .progress-wrap{background:#111827;border:1px solid #facc15}.high-contrast .progress-bar{background:#facc15}
@keyframes gentleRise{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes floatOrb{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(22px,18px,0) scale(1.04)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}@media(max-width:980px){.topbar{position:static;border-radius:26px;align-items:flex-start;flex-direction:column}.topbar-actions{width:100%;justify-content:flex-start}.hero,.qr-hero{grid-template-columns:1fr}.hero{min-height:auto}.point-grid,.destination-grid,.trust-strip{grid-template-columns:1fr 1fr}.route-header{flex-direction:column}.step-controls{display:grid;grid-template-columns:1fr 1fr}.utility-nav{width:100%}h1{font-size:clamp(2.15rem,12vw,3.7rem)}}@media(max-width:640px){.site-shell{width:min(100% - 16px,1180px);padding-top:8px}.hero,.section,.qr-status-card,.help-card{border-radius:24px;padding:22px}.brand{width:100%}.brand small{font-size:.82rem}.point-grid,.destination-grid,.trust-strip{grid-template-columns:1fr}.button,.utility-button{width:100%}.language-switcher{width:100%;display:grid;grid-template-columns:repeat(3,1fr)}.step-controls{grid-template-columns:1fr}}
.topbar-download-btn{min-height:44px!important;padding:10px 18px!important;font-size:.9rem!important;white-space:nowrap}.download-strip-inner{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}.download-strip-icon{flex-shrink:0}.download-card{display:grid;grid-template-columns:1fr 300px;gap:28px;align-items:start}.download-card-main{display:grid;gap:0}.download-store-btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.button-disabled{opacity:.55;cursor:not-allowed;pointer-events:none}.install-steps{list-style:none;padding:0;margin:16px 0;display:grid;gap:10px}.install-steps li{display:flex;gap:14px;align-items:flex-start;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.6)}.install-steps li .step-num{flex-shrink:0;display:grid;place-items:center;width:36px;height:36px;border-radius:999px;background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;font-weight:950;font-size:.88rem}.install-steps li .step-text{font-weight:680;color:var(--muted);padding-top:6px}.qr-display{display:grid;place-items:center;gap:10px;padding:24px;border:1px solid var(--line);border-radius:var(--r);background:#fff;box-shadow:var(--soft);text-align:center}.qr-display svg{width:100%;max-width:260px;height:auto}.coming-soon-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:999px;background:#fef3c7;color:#92400e;font-weight:900;font-size:.78rem;letter-spacing:.05em;vertical-align:middle}.high-contrast .install-steps li{background:#0b1220;border-color:#facc15}.high-contrast .qr-display{background:#111827;border-color:#facc15;color:#fff}.high-contrast .coming-soon-badge{background:#111827;color:#fde047;border:1px solid #facc15}.high-contrast .download-strip-section{background:#0b1220}@media(max-width:980px){.download-card{grid-template-columns:1fr}.download-strip-icon{display:none}}@media(max-width:640px){.download-store-btns .button{width:100%}}
