/* Perfect Iso — mobile application shell 3.0.0 */
:root{--pi-navy:#082d52;--pi-orange:#d95c09;--pi-dock-height:76px}
.pi-skip{position:fixed;top:-100px;left:16px;z-index:9999;background:#fff;padding:14px;color:#082d52}.pi-skip:focus{top:10px}
.pi-dock{display:none}.pi-dock *{box-sizing:border-box}.pi-dock a,.pi-dock button{font-family:system-ui,sans-serif;text-decoration:none}
.pi-offline{position:fixed;top:0;left:0;right:0;z-index:1000;padding:12px 18px;background:#fff1d6;color:#573509;text-align:center;font:600 14px/1.45 system-ui;box-shadow:0 2px 12px #0002}
.pi-offline[hidden],.pi-install-native[hidden]{display:none!important}
.pi-install-dialog{box-sizing:border-box;width:min(440px,calc(100% - 32px));max-height:85dvh;overflow:auto;border:0;border-radius:24px;padding:36px 26px;background:#fff;color:#182c40;box-shadow:0 24px 90px #0004;font:16px/1.6 system-ui}
.pi-install-dialog::backdrop{background:#061e38b8;backdrop-filter:blur(3px)}
.pi-install-dialog h2{font:750 30px/1.1 system-ui;letter-spacing:-.035em;margin:14px 0;color:#082d52}
.pi-install-dialog p{margin:18px 0}.pi-install-dialog small{display:block;font-size:13px;color:#566675}
.pi-eyebrow{font-size:10px;letter-spacing:.1em;font-weight:800;color:#9b4509;display:block;margin-right:24px}
.pi-dialog-close{position:absolute;right:10px;top:8px;width:44px;height:44px;border:0;background:transparent;font:28px system-ui;color:#082d52;cursor:pointer}
.pi-install-native{display:block;width:100%;border:0;border-radius:12px;padding:15px;background:#082d52;color:#fff;font:700 16px system-ui;cursor:pointer}
.pi-install-help{border-radius:14px;background:#f0f4f7;padding:16px;font-size:14px}
.pi-public :focus-visible,.pi-terrain :focus-visible,.pi-dock :focus-visible,.pi-install-dialog :focus-visible{outline:3px solid #df731f;outline-offset:3px}
.pi-public [data-reveal]{opacity:1;transform:none}
.pi-public .choice input:focus-visible+label{outline:3px solid #df731f;outline-offset:3px}
.pi-public .nav-center.open{top:100%}
.pi-public .nav-right .btn-line{display:inline-flex}
.pi-terrain .topin{align-items:flex-start}.pi-terrain .toplinks{flex-wrap:wrap;justify-content:flex-end}
.pi-terrain .toplink{min-height:44px;display:inline-flex;align-items:center}
.pi-project-shortcuts{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}
.pi-project-shortcuts a{padding:10px 14px;min-height:44px;display:inline-flex;align-items:center;border:1px solid #bccbd6;border-radius:12px;color:inherit;font-size:14px;font-weight:600;text-decoration:none}
.pi-project-shortcuts a:hover{background:#eaf0f5;color:#082d52}
.pi-draft-note{font-size:13px;color:#52616e;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.pi-draft-note button{border:0;background:transparent;color:#082d52;text-decoration:underline;min-height:44px;cursor:pointer}
.pi-est-errors{background:#fff0ee;color:#9c281c;padding:18px;border-radius:14px;margin:0 0 18px}
@media(max-width:767px){
 .pi-dock{position:fixed;display:flex;align-items:stretch;left:0;right:0;bottom:0;z-index:70;padding:7px max(8px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));gap:3px;background:#fffffff5;border-top:1px solid #dbe3e9;box-shadow:0 -4px 22px #082d520a;backdrop-filter:blur(16px)}
 .pi-dock a,.pi-dock button{min-width:0;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:56px;padding:6px 2px;border:0;border-radius:13px;background:transparent;color:#526373;font-size:10px;font-weight:650;line-height:1.2;cursor:pointer}
 .pi-dock a[aria-current=page]{background:#eaf0f5;color:#082d52}.pi-dock a[aria-current=page] svg{stroke-width:2.3}
 .pi-public{padding-bottom:calc(var(--pi-dock-height) + env(safe-area-inset-bottom));font-family:system-ui,-apple-system,"Segoe UI",sans-serif}
 .pi-public .container{width:calc(100% - 36px)}
 .pi-public .nav{height:76px;gap:12px}.pi-public .brand{height:68px}.pi-public .brand img{height:64px;max-width:76px}
 .pi-public .nav-right{gap:8px}.pi-public .nav-right .btn-line{min-height:44px;font-size:12px;padding:0 13px}.pi-public .menu{width:44px;height:44px;font-size:21px}
 .pi-public .nav-center.open{left:12px;right:12px;padding:12px;box-shadow:0 15px 35px #082d521a}.pi-public .nav-center a{display:block;padding:11px 12px;min-height:44px}
 .pi-public h1{font-size:clamp(34px,9.5vw,54px);line-height:1.04;overflow-wrap:break-word}.pi-public h2{font-size:clamp(29px,8vw,42px);line-height:1.08}
 .pi-public .h25-hero,.pi-public .h25-hero-inner{min-height:0}.pi-public .h25-hero-inner{padding:54px 0 32px;gap:24px;display:flex;align-items:stretch}
 .pi-public .h25-hero h1{font-size:clamp(39px,11.5vw,62px);line-height:1.01}.pi-public .h25-lead{margin:20px 0 24px;font-size:16px;line-height:1.65}
 .pi-public .h25-hero-card{padding:22px;border-radius:18px}.pi-public .h25-hero-card strong{font-size:22px}.pi-public .h25-proof{margin-top:25px;grid-template-columns:repeat(2,minmax(0,1fr))}
 .pi-public .h25-actions{display:grid;grid-template-columns:1fr}.pi-public .btn{min-height:48px;white-space:normal;text-align:center}
 .pi-public .section,.pi-public .h25-intro,.pi-public .h25-solution,.pi-public .h25-spaces,.pi-public .h25-trades,.pi-public .h25-beforeafter,.pi-public .h25-docs,.pi-public .h25-method,.pi-public .h25-portal,.pi-public .h25-forwho,.pi-public .h25-faq{padding:56px 0}
 .pi-public .page-hero{padding:36px 0}.pi-public .page-hero .inner{gap:22px}.pi-public .h25-title-row,.pi-public .h25-intro-grid,.pi-public .h25-trades-head,.pi-public .h25-faq-grid,.pi-public .h25-portal-grid{gap:25px}
 .pi-public .h25-title-row h2,.pi-public .h25-intro h2,.pi-public .h25-solution-head h2,.pi-public .h25-trades-head h2,.pi-public .h25-docs h2,.pi-public .h25-method h2,.pi-public .h25-portal h2,.pi-public .h25-estimate h2,.pi-public .h25-faq h2{font-size:clamp(30px,8.5vw,42px)}
 .pi-public .form-box,.pi-public .est-main{padding:22px 18px;border-radius:20px}.pi-public .est-step h2{font-size:29px!important;line-height:1.12}.pi-public .est-actions{gap:8px}.pi-public .est-actions .btn{padding:10px 16px}
 .pi-public input,.pi-public textarea,.pi-public select,.pi-terrain input,.pi-terrain textarea,.pi-terrain select,.fi-body input,.fi-body textarea,.fi-body select{font-size:16px!important}
 .pi-public .form-grid,.pi-public .choice-grid{grid-template-columns:1fr}.pi-public .contact-grid{gap:26px}.pi-public .result{padding:25px}.pi-public .result strong{font-size:32px}
 .pi-terrain .topin{display:block}.pi-terrain .toplinks{margin-top:8px;justify-content:flex-start;gap:5px}.pi-terrain .toplink{padding:8px;font-size:11px}
 .pi-terrain .wrap{padding-bottom:calc(96px + env(safe-area-inset-bottom))}.pi-terrain .room-tour-nav{bottom:calc(var(--pi-dock-height) + env(safe-area-inset-bottom));background:#f3f5f6ed}
 .pi-terrain .status-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.pi-terrain .status-buttons button{min-height:56px}
 .pi-terrain .grid{grid-template-columns:1fr}.pi-terrain .room-mobile-grid{grid-template-columns:minmax(0,1fr)}.pi-terrain .room-tour-btn{min-width:0}.pi-terrain .room-tour-btn strong{overflow-wrap:anywhere}
 .fi-body:has(.pi-dock){padding-bottom:calc(92px + env(safe-area-inset-bottom))}.fi-main{min-width:0}.fi-ta-content{overflow-x:auto}
 .pi-install-dialog{padding:34px 22px}.pi-draft-note{flex-wrap:wrap}
}
@media(min-width:768px){.pi-terrain .pi-dock{display:flex;position:fixed;bottom:0;left:0;right:0;justify-content:center;background:white;border-top:1px solid #dbe3e9;padding:8px;z-index:30;gap:12px}.pi-terrain .pi-dock a,.pi-terrain .pi-dock button{display:flex;gap:8px;align-items:center;padding:12px 24px;border:0;border-radius:12px;background:#f0f4f7;color:#082d52;font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
