@font-face{font-family:Jakarta;src:url('/assets/fonts/jakarta.woff2')}
:root{font-family:Jakarta,Arial,sans-serif;color:#172b36;--ink:#164056;--line:#dfe4e6;--glass:#fffffff0}*{box-sizing:border-box}body{margin:0;background:#eef3f3;font-size:14px}button,input,select,textarea{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer;color:inherit}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #42c6ec;outline-offset:3px}button{border:1px solid #ddd;background:#fff}a{color:var(--ink)}[hidden]{display:none!important}#app{position:relative;height:100dvh;min-height:500px;overflow:hidden}#scene,#visual{position:absolute;inset:0}#scene{overflow:hidden}#visual{transition:transform .35s;transform-origin:center}.toolbar{position:absolute;z-index:20;top:16px;left:16px;right:16px;display:flex;justify-content:space-between;align-items:center;gap:12px;pointer-events:none}.toolbar>*{pointer-events:auto}.left,.right{display:flex;gap:16px;align-items:center}.pill,.circle{display:inline-flex;align-items:center;justify-content:center;border-radius:100px;min-height:40px;box-shadow:inset 0 0 0 2px #ffffff1f,0 2px 4px #00000017}.pill{gap:8px;padding:8px 16px;font-weight:650}.circle{width:40px;height:40px;font-size:24px;flex-shrink:0}.dark{background:#164056ed;color:#fff;border:1px solid #7c9fac88}.black{background:#000;color:#fff;border:1px solid #555}.white{background:#ffffffef;color:#111}.icon{font-size:21px;line-height:1}.toggle{background:#17405555;border:1px solid #ffffff50;font-size:12px;padding:3px;min-height:46px;gap:0}.toggle span{padding:10px 12px;border-radius:30px;color:#ffffff9e}.toggle .active{background:#fff;color:#161b20}#proaco{position:absolute;left:28px;top:94px;z-index:5;width:96px;max-height:30px;object-fit:contain}#intro{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:90px;padding:60px 20px 10px;background:#18384c1a}#intro>img{width:400px;max-width:70vw;max-height:340px;object-fit:contain}.enter{background:#fff;border:2px solid #ddd;border-radius:40px;padding:15px 30px;width:240px;font-size:17px;box-shadow:0 6px 30px #0002;color:#171717}#rail{position:absolute;z-index:10;top:80px;right:8px;background:#ffffffd9;backdrop-filter:blur(12px);border-radius:18px;padding:8px;display:flex;flex-direction:column;gap:5px;max-height:calc(100% - 210px);overflow:auto;scrollbar-width:thin;width:116px;box-shadow:0 4px 12px #0001}#rail:empty{display:none}#rail button{border-radius:14px;min-height:40px;padding:7px;font-size:12px;background:#f6f6f6;box-shadow:0 1px 3px #0001}#rail .active{background:var(--ink);color:#fff}#rail.floor{width:100px}.previous,.next{position:absolute;z-index:8;top:50%;transform:translateY(-50%);font-size:30px}.previous{left:16px}.next{right:16px}#whatsapp{position:absolute;z-index:10;bottom:16px;right:16px}#caption{position:absolute;top:145px;left:16px;z-index:5;background:#164056c9;color:white;padding:4px 8px;font-size:12px}#caption:empty{display:none}.pin{position:absolute;transform:translate(-50%,-50%);background:#fff;border:none;padding:7px 10px;border-radius:7px;white-space:nowrap;box-shadow:0 2px 7px #0003;font-size:13px;color:#171717}.pin:before{content:'';display:inline-block;width:13px;height:13px;border-radius:50%;background:var(--ink);margin-right:5px;vertical-align:-1px}.pin:hover{transform:translate(-50%,-50%) scale(1.08)}#hotspots{position:absolute;inset:0;pointer-events:none}#hotspots button{pointer-events:auto}.glass{background:var(--glass);backdrop-filter:blur(14px);box-shadow:0 10px 45px #0002;border:1px solid #ffffffc0;border-radius:18px}#veil{position:fixed;inset:0;background:#0005;backdrop-filter:blur(5px);z-index:30}#drawer{position:fixed;left:0;top:0;bottom:0;z-index:40;width:330px;max-width:92vw;background:#fff;padding:26px 23px;overflow:auto;box-shadow:10px 0 30px #0002}#drawer h2{font-size:22px;margin:38px 0 5px}#drawer .address{font-size:12px;color:#7e8a90;line-height:1.7}#drawer nav{display:grid;gap:3px;margin-top:24px}#drawer nav button{border:0;background:transparent;text-align:left;padding:12px;border-radius:10px;font-size:14px}#drawer nav button:hover{background:#edf3f5}#drawer nav .active{background:#eaf1f3;font-weight:700}#drawer .contacts{display:grid;gap:12px;border-top:1px solid var(--line);margin-top:22px;padding-top:20px;font-size:12px}#drawer .contacts a{text-decoration:none}.muted{color:#6b7c85;font-size:12px;line-height:1.7}.close{position:absolute;right:16px;top:14px;font-size:24px;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#f8fafb}.searchrow{display:flex;gap:8px}.searchrow input{flex:1;min-width:80px}.searchrow input,.searchrow select,.searchrow button{border:1px solid var(--line);border-radius:30px;background:#fff;padding:10px 13px}.searchrow select{max-width:240px}.resultbar{border-block:1px solid var(--line);display:flex;justify-content:space-between;gap:10px;align-items:center;padding:9px 14px;background:#fff;font-size:12px}.viewtools{display:flex;align-items:center;gap:8px}.viewtools button{border-radius:16px;padding:4px 10px}.badge{background:#24ac58;border-radius:30px;color:#fff;font-size:10px;padding:5px 10px;white-space:nowrap}.primary{background:var(--ink);color:#fff;border:1px solid #517581;border-radius:30px;padding:12px 20px;box-shadow:inset 0 0 0 2px #ffffff16;font-weight:600}.secondary{background:#f8fafb;border:1px solid #d8dfe3;border-radius:30px;padding:11px 16px;color:var(--ink)}.facts{margin:14px 0}.facts>div{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #e5e5e5;padding:10px 0;font-size:12px}.actionrow{display:flex;gap:8px}.actionrow>*{flex:1}dialog{padding:0;border:1px solid #fff;border-radius:20px;max-width:min(1060px,94vw);max-height:90dvh;box-shadow:0 10px 100px #0006;color:#1c313c}dialog::backdrop{background:#0c253a66;backdrop-filter:blur(7px)}.modalbody{padding:30px;overflow:auto;max-height:83dvh}.modalbody h2{font-size:23px}.modalbody .close{position:sticky;float:right;top:0;right:0;z-index:3}.modalbody>h2:first-of-type{padding-right:40px}.qr{width:240px;display:block;margin:20px auto}.empty{grid-column:1/-1;padding:40px;text-align:center}.contentpage{position:absolute;z-index:6;inset:80px 24px 60px;overflow:auto;background:#fffffff5;border-radius:18px;padding:32px}#content:empty{display:none}.contentpage h1{font-size:28px;margin:8px 0}.contentpage h2{font-size:20px}.workgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:24px}.workgrid button{padding:0;border-radius:12px;overflow:hidden;text-align:left;background:#fff}.workgrid img{width:100%;height:200px;object-fit:cover;display:block}.workgrid span{padding:10px;display:block}form{display:grid;gap:10px}form label{display:grid;gap:6px;font-size:12px}form input,form textarea,form select{border:1px solid #d4dfe3;padding:12px;border-radius:9px;width:100%;background:white}form textarea{min-height:100px}form .check{display:flex;align-items:center}form .check input{width:auto}.notice{background:#edf4f6;border-left:3px solid var(--ink);padding:12px 16px;border-radius:0 8px 8px 0;font-size:12px;line-height:1.8}#toast{position:fixed;z-index:99;bottom:30px;left:50%;transform:translateX(-50%);background:#153f55;color:white;border-radius:20px;padding:12px 20px;max-width:85vw;font-size:13px}
@media(max-width:760px){.toolbar{left:10px;right:10px;top:10px;gap:5px}.left,.right{gap:7px}.circle{width:36px;height:36px;font-size:21px}.pill{min-height:36px;padding:7px 12px;font-size:12px}#toggle{font-size:10px;padding:2px}.toggle span{padding:9px}#proaco{top:103px;left:17px;width:80px}#rail{top:100px;width:91px;max-height:calc(100% - 210px)}#rail.floor{width:74px}#intro{gap:60px}#intro>img{width:320px}.searchrow{flex-wrap:wrap}.searchrow input{flex-basis:100%}.searchrow select{flex:1;font-size:11px}.badge{font-size:8px;padding:4px 6px}.resultbar{font-size:10px;padding:7px}.viewtools{gap:4px}.viewtools button{padding:4px 7px;font-size:10px}.modalbody{padding:22px}.workgrid{grid-template-columns:repeat(2,1fr)}.workgrid img{height:125px}.contentpage{inset:98px 8px 70px;padding:20px}.previous{left:10px}.next{right:10px}.pin{font-size:11px;padding:5px 7px}#caption{top:142px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
#scene{background:white}
