:root{--ink:#102a2b;--muted:#667675;--green:#138c74;--green-dark:#075349;--lime:#e3fa77;--whatsapp:#22cd67;--line:#e3e9e4;--wash:#f5f8f4;--white:#fff;--shadow:0 12px 38px rgba(18,47,45,.08);font-family:Inter,'Segoe UI',Arial,system-ui,sans-serif;color:var(--ink)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}img{max-width:100%}.container{max-width:1350px;margin:0 auto;padding:0 28px}.site-header{height:90px;background:#fff;border-bottom:1px solid #edf1ec;position:sticky;top:0;z-index:20}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand,.side-logo{display:flex;align-items:center;gap:13px;font-size:28px;font-weight:800;letter-spacing:-1.5px}.brand strong,.side-logo span:not(.brand-mark){color:var(--green)}.brand small{font-size:10px;font-weight:800;letter-spacing:5.4px;display:block;margin-top:-3px;color:#668779}.brand-mark{background:#104a41;color:var(--lime);width:48px;height:48px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;font-size:41px;line-height:1;font-weight:500;letter-spacing:0}.top-nav{display:flex;align-items:center;gap:34px;font-size:14px;font-weight:700}.top-nav a:hover,.footer-inner a:hover{color:var(--green)}.top-nav .nav-cta{padding:14px 20px;border-radius:10px;background:var(--green-dark);color:white}.top-nav .nav-cta:hover{background:var(--green);color:white}.mobile-cta{display:none}.hero-area{background:linear-gradient(180deg,#eef7ef 0%,#f4f8f3 77%,#fff 100%);padding:60px 0 66px}.hero-copy{display:flex;justify-content:space-between;align-items:end;gap:30px;padding-bottom:35px}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:#087a60;font-size:11px;font-weight:900;letter-spacing:2.2px}.tiny-dot{width:7px;height:7px;background:#31b87e;display:inline-block;border-radius:50%}.hero-copy h1{max-width:850px;font-size:clamp(36px,4.1vw,62px);line-height:1.08;letter-spacing:-2.7px;margin:15px 0 17px}.hero-copy em{font-style:normal;color:var(--green)}.hero-copy p{font-size:16px;color:#5f7771;margin:0;max-width:660px;line-height:1.6}.hero-stat{display:flex;align-items:center;gap:15px;margin:0 4px 10px;white-space:nowrap}.hero-stat strong{font-size:49px;font-weight:800;letter-spacing:-3px;color:var(--green)}.hero-stat span{font-size:12px;line-height:1.6;color:#56716a}.banner-wrap{position:relative;height:355px;border-radius:23px;overflow:hidden;box-shadow:0 20px 56px rgba(4,49,43,.14);background:#092e2b}.banner-track{height:100%}.banner-slide{display:block;position:absolute;inset:0;opacity:0;z-index:0;pointer-events:none;transition:opacity .65s ease;overflow:hidden}.banner-slide.is-active{opacity:1;z-index:1;pointer-events:auto}.banner-slide>img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.banner-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,31,31,.96) 0%,rgba(5,46,44,.88) 31%,rgba(3,38,41,.26) 74%)}.banner-content{position:absolute;left:6%;top:50%;transform:translateY(-50%);z-index:1;color:#fff;max-width:550px}.banner-tag{font-weight:800;font-size:10px;letter-spacing:2px;background:rgba(229,250,119,.15);border:1px solid rgba(229,250,119,.6);color:var(--lime);border-radius:40px;padding:9px 15px}.banner-content h2{font-size:clamp(25px,3vw,42px);letter-spacing:-1.6px;line-height:1.13;margin:23px 0 12px}.banner-content p{font-size:14px;color:#d4e6e0;line-height:1.55;max-width:470px;margin:0 0 24px}.banner-button{display:inline-flex;background:var(--lime);color:#0c3931;font-size:13px;font-weight:850;padding:14px 20px;border-radius:9px}.banner-arrow{position:absolute;top:50%;z-index:5;transform:translateY(-50%);background:#ffffffb8;border:1px solid #ffffff88;color:#163b33;width:37px;height:37px;border-radius:50%;font-size:28px;display:grid;place-items:center;line-height:1}.banner-arrow.prev{left:14px}.banner-arrow.next{right:14px}.banner-dots{position:absolute;bottom:17px;left:50%;transform:translateX(-50%);display:flex;z-index:5;gap:7px}.banner-dots button{width:7px;height:7px;border:0;border-radius:20px;background:#ffffff7a;padding:0;transition:all .2s}.banner-dots button.is-active{width:27px;background:var(--lime)}.list-section{padding-top:35px;padding-bottom:100px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:24px}.section-head h2{font-size:clamp(28px,3vw,39px);letter-spacing:-1.3px;line-height:1.12;margin:9px 0}.section-head p{color:var(--muted);font-size:14px;margin:0}.total-badge{font-size:12px;font-weight:800;border-radius:40px;background:#e9f5ed;padding:10px 14px;color:#157b60;white-space:nowrap}.searchbar{display:flex;align-items:center;gap:13px;padding:14px;background:#fff;border:1px solid var(--line);box-shadow:0 5px 20px rgba(0,0,0,.025);border-radius:15px;margin-bottom:30px}.search-input{display:flex;align-items:center;flex:1;gap:8px;background:#f5f8f5;border-radius:9px;padding:0 15px;min-width:0}.search-input span{font-size:28px;color:var(--green)}.search-input input{width:100%;border:0;outline:0;background:transparent;padding:14px 0;font-size:14px;min-width:0}.searchbar select{min-width:193px;background:#f5f8f5;border:0;border-radius:9px;padding:15px 13px;color:#38514b;outline:0}.button{border:0;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-align:center;border-radius:10px;padding:13px 19px;font-size:13px;font-weight:800;line-height:1.2;transition:transform .15s,background .15s,box-shadow .15s;white-space:nowrap}.button:hover{transform:translateY(-1px)}.button.primary{background:var(--green);color:white}.button.primary:hover{background:#0b705b}.button.whatsapp{background:var(--whatsapp);color:white}.button.whatsapp:hover{background:#16aa53}.button.outline,.button.ghost{background:white;border:1px solid #d3e1d9;color:var(--green-dark)}.button.unavailable{background:#f2f4f1;color:#8a9992;cursor:default}.button.unavailable:hover{transform:none}.clear-filter{font-size:12px;font-weight:700;color:var(--green)}.business-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.business-card{min-width:0;border-radius:17px;border:1px solid #e1e9e3;box-shadow:0 5px 20px rgba(25,65,50,.045);overflow:hidden;display:flex;flex-direction:column;background:#fff;transition:transform .18s,box-shadow .18s}.business-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.card-visual{aspect-ratio:1/1;min-height:191px;background:#eef4f0;position:relative;display:flex;align-items:center;justify-content:center;padding:18px;overflow:hidden}.card-visual>img{max-height:100%;max-width:100%;width:100%;height:100%;object-fit:contain;display:block;padding:14px;background:#fff;border:1px solid #dfebe3;border-radius:14px;box-shadow:inset 0 1px 0 rgba(255,255,255,.95)}.spotlight-label{position:absolute;top:11px;left:12px;z-index:1;background:var(--lime);border-radius:99px;font-size:10px;font-weight:900;padding:8px 10px;color:#184237}.logo-placeholder{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:7px;height:100%;width:100%;padding:14px;border:1px solid #dcece1;background:radial-gradient(circle at 50% -50%,#e0f3e7,#f7fbf7 66%);border-radius:14px}.placeholder-house{font-size:43px;color:var(--green);line-height:.8}.logo-placeholder strong{font-size:clamp(15px,1.3vw,21px);font-weight:900;color:#16493b;letter-spacing:-.5px;line-height:1.15}.logo-placeholder small{font-size:8px;color:#7a9b8b;font-weight:900;letter-spacing:3px}.card-content{padding:20px 20px 8px;display:flex;flex-direction:column;flex:1}.category-pill{align-self:flex-start;padding:7px 11px;border-radius:30px;background:#e8f8f0;color:#087b59;font-weight:750;font-size:11px}.card-content h3{font-size:18px;letter-spacing:-.55px;line-height:1.25;margin:11px 0 9px;min-height:44px}.card-location{color:#7c8983;font-size:12px}.view-pill{color:#627970;background:#f4f8f6;border:1px solid #e8efea;border-radius:20px;padding:6px 11px;font-size:11px;font-weight:650;align-self:start;margin-top:13px}.view-pill span{color:#234d40;font-weight:900}.card-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:15px 19px 20px}.card-buttons .button{min-width:0;padding:14px 8px}.empty-state{text-align:center;background:#f6faf6;padding:65px 20px;border-radius:15px}.empty-state p{color:var(--muted)}.bottom-banner{background:#073b35;color:white;padding:56px 0}.bottom-inner{display:flex;align-items:center;justify-content:space-between;gap:50px}.bottom-inner h2{font-size:clamp(24px,3vw,39px);letter-spacing:-1.1px;margin:10px 0}.bottom-inner p{font-size:14px;color:#bcdbce;margin:0;max-width:600px}.bottom-inner .eyebrow{color:var(--lime)}.light-button{background:var(--lime);color:#073b35}.site-footer{background:#052d29;color:#c5dbd3;padding:25px 0}.footer-inner{display:flex;gap:20px;align-items:center;justify-content:space-between;font-size:12px}.footer-inner small{display:block;color:#83b09f;margin-top:5px}.footer-inner strong{color:white}.details-wrap{min-height:65vh;padding-top:35px;padding-bottom:70px}.back-link{display:inline-block;color:var(--green);font-weight:700;margin-bottom:25px}.details-card{display:grid;grid-template-columns:40% 60%;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:var(--shadow)}.details-logo{padding:50px;background:var(--wash);display:flex;align-items:center;justify-content:center;min-height:330px}.details-logo img{max-height:240px;object-fit:contain}.letter-logo{font-size:33px;font-weight:900;text-align:center;color:var(--green-dark)}.details-info{padding:48px 55px}.details-info h1{letter-spacing:-1.2px;font-size:38px}.details-info p{color:var(--muted);line-height:1.7}.details-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:27px}.address{font-weight:700}.installer-body,.admin-body{background:#f3f7f4}.installer-body{min-height:100vh;display:grid;place-items:center;padding:40px 18px}.installer-card{width:min(800px,100%);padding:40px 48px;background:white;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}.installer-brand{display:flex;align-items:center;gap:15px}.installer-brand h1{margin:0;letter-spacing:-1px}.installer-brand h1 em{font-style:normal;color:var(--green)}.installer-card>p{color:var(--muted);line-height:1.6}.installer-card h2{font-size:19px;margin-top:28px}.admin-layout{min-height:100vh;display:flex}.sidebar{width:258px;flex:0 0 258px;background:#0c302d;color:#bed9d0;padding:27px 19px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.side-logo{color:white;font-size:20px;white-space:nowrap;gap:8px;letter-spacing:-.7px;margin:0 0 38px 9px}.side-logo .brand-mark{width:32px;height:32px;border-radius:9px;font-size:28px}.side-logo small{font-size:9px;letter-spacing:1px;color:var(--lime)}.sidebar nav{display:grid;gap:6px}.sidebar nav a{padding:13px 16px;border-radius:9px;font-size:14px;font-weight:650}.sidebar nav a:hover,.sidebar nav a.selected{background:#175a4e;color:#fff}.side-foot{display:grid;gap:14px;border-top:1px solid #2b544a;margin-top:auto;padding:24px 12px 3px;font-size:13px}.side-foot a:hover{color:var(--lime)}.admin-main{padding:31px 43px 85px;flex:1;min-width:0;max-width:100%}.admin-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:27px}.admin-head small{font-size:11px;letter-spacing:2px;color:#428773;font-weight:850}.admin-head h1{font-size:31px;margin:7px 0;letter-spacing:-1px}.avatar{background:var(--lime);color:#164235;font-size:11px;font-weight:900;padding:13px;border-radius:50%}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:26px}.stat{background:#fff;padding:22px;border:1px solid var(--line);border-radius:14px}.stat small{color:var(--muted);font-weight:700}.stat strong{display:block;font-size:28px;margin-top:13px;color:var(--green-dark);letter-spacing:-.7px}.panel{border-radius:14px;background:#fff;border:1px solid var(--line);padding:23px 25px;margin-bottom:21px}.panel h2{margin:0 0 18px;font-size:19px;letter-spacing:-.5px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:20px}.panel-head h2{margin:0}.admin-table{width:100%;border-collapse:collapse;font-size:13px;min-width:650px}.admin-table th{text-align:left;color:#788980;background:#f4f8f4;font-size:11px;letter-spacing:.6px}.admin-table td,.admin-table th{padding:13px 12px;border-bottom:1px solid #edf1ed}.admin-table tr:last-child td{border:0}.table-scroll{overflow:auto}.admin-table td strong{font-size:13px}.admin-table .muted{color:#8d9d92}.admin-table a.action{color:var(--green);font-weight:800}.admin-table button.link-danger{border:0;color:#b14343;background:transparent;font-size:12px;font-weight:800}.pill-ok,.pill-off{display:inline-block;border-radius:100px;background:#e3f7e8;color:#138357;font-weight:850;padding:6px 9px;font-size:10px}.pill-off{background:#fff1ea;color:#ad6b34}.admin-form{display:grid;gap:16px}.admin-form label{display:grid;gap:7px;font-size:12px;font-weight:800;color:#36574d}.admin-form input:not([type=checkbox]),.admin-form select,.admin-form textarea{width:100%;border:1px solid #dce7dd;border-radius:9px;padding:13px 14px;font-size:13px;background:#fff;color:#183e33;outline:0}.admin-form textarea{resize:vertical;min-height:90px}.admin-form input:focus,.admin-form textarea:focus{border-color:#24b084;box-shadow:0 0 0 3px #dff8ed}.admin-form input[type=file]{border-style:dashed}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.span-2{grid-column:span 2}.admin-form .checkbox-field{display:flex;gap:9px;align-items:center}.form-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding-top:8px}.flash{border-radius:9px;padding:13px 17px;font-size:13px;font-weight:700;margin:0 0 22px;background:#e7f7e9;color:#116b50}.flash.error{background:#fff2ef;color:#a8372b}.admin-filter{display:flex;gap:10px;margin-bottom:15px}.admin-filter input{flex:1;border:1px solid var(--line);padding:12px;border-radius:8px}.admin-top-buttons{display:flex;gap:8px}.admin-top-buttons .button{padding:11px 15px}.preview-logo{max-height:100px;max-width:230px;object-fit:contain;border:1px solid var(--line);padding:10px;border-radius:10px;background:#f8faf8}.preview-banner{max-width:450px;height:150px;object-fit:cover;border-radius:8px}.help{font-size:12px;color:var(--muted);line-height:1.7}.btn-small{font-size:11px!important;padding:8px 10px!important}.danger{background:#bb3e4a!important;color:white!important}.login-page{min-height:100vh;display:grid;place-items:center;background:linear-gradient(145deg,#073d33,#167259)}.login-card{width:min(430px,calc(100% - 34px));padding:36px;background:white;border-radius:17px;box-shadow:0 30px 70px #00261e60}.login-card h1{font-size:25px;letter-spacing:-1px}.login-card p{color:var(--muted);font-size:13px}.login-card .admin-form{margin-top:25px}.login-card .button{width:100%;padding:15px}.csv-link{font-size:12px;font-weight:800;color:var(--green)}@media(max-width:1180px){.business-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stat-grid{grid-template-columns:repeat(2,1fr)}.admin-main{padding:30px 25px}}@media(max-width:900px){.business-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-stat{display:none}.sidebar{width:205px;flex-basis:205px}.side-logo{font-size:16px}.admin-main{padding:27px 19px}.top-nav{gap:14px}}@media(max-width:650px){.container{padding:0 16px}.site-header{height:72px}.brand{font-size:22px}.brand-mark{height:39px;width:39px;font-size:33px;border-radius:10px}.brand small{font-size:8px;letter-spacing:4px}.top-nav{display:none}.mobile-cta{display:inline-flex;font-size:12px;font-weight:800;background:var(--green-dark);color:#fff;padding:12px;border-radius:8px}.hero-area{padding:34px 0 35px}.hero-copy{padding-bottom:23px}.hero-copy h1{font-size:37px;letter-spacing:-1.4px}.hero-copy p{font-size:13px}.banner-wrap{height:310px;border-radius:15px}.banner-shade{background:linear-gradient(90deg,#042a2af2,#04313199)}.banner-content{left:8%;right:8%}.banner-content h2{font-size:27px;letter-spacing:-.8px;margin:18px 0 12px}.banner-content p{font-size:13px}.banner-tag{font-size:9px;padding:7px 10px}.banner-arrow{height:28px;width:28px;font-size:21px}.banner-arrow.next{right:6px}.banner-arrow.prev{left:6px}.list-section{padding-top:35px;padding-bottom:55px}.section-head{align-items:start}.section-head h2{font-size:27px}.section-head p{font-size:12px}.total-badge{font-size:10px}.searchbar{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:10px}.search-input{grid-column:span 2}.searchbar select{min-width:0;width:100%;font-size:12px}.searchbar>.button{padding:13px}.business-grid{grid-template-columns:1fr 1fr;gap:11px}.card-visual{aspect-ratio:1/1;min-height:132px;padding:10px}.card-visual>img{padding:10px;border-radius:12px}.placeholder-house{font-size:32px}.logo-placeholder strong{font-size:13px}.logo-placeholder small{font-size:6px;letter-spacing:2px}.card-content{padding:12px 11px 4px}.category-pill{padding:5px 8px;font-size:10px}.card-content h3{font-size:13px;letter-spacing:-.1px;min-height:35px}.card-location{font-size:10px}.view-pill{font-size:9px;padding:5px 7px;margin-top:10px}.card-buttons{gap:6px;padding:9px}.card-buttons .button{font-size:10px;padding:12px 3px}.bottom-inner{display:block}.bottom-inner .button{margin-top:23px}.footer-inner{display:grid;gap:9px}.details-card{grid-template-columns:1fr}.details-logo{min-height:210px;padding:28px}.details-info{padding:27px}.details-info h1{font-size:26px}.admin-layout{display:block}.sidebar{position:relative;width:auto;height:auto;padding:14px;display:block}.side-logo{margin:0 0 12px}.sidebar nav{display:flex;overflow:auto;gap:5px}.sidebar nav a{white-space:nowrap;padding:8px 12px;font-size:11px}.side-foot{display:none}.admin-head h1{font-size:24px}.admin-main{padding:20px 14px 45px}.stat-grid{gap:9px}.stat{padding:14px}.stat strong{font-size:21px}.panel{padding:15px}.form-grid{grid-template-columns:1fr}.span-2{grid-column:span 1}.installer-card{padding:25px 18px}}@media(max-width:360px){.business-grid{grid-template-columns:1fr}.card-visual{height:180px}.card-content h3{font-size:17px}.card-buttons .button{font-size:12px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}

.card-buttons .card-site-button{grid-column:span 2;background:#f2f9f5;border-color:#d3e9d9;color:#187b60}.card-buttons .card-site-button:hover{background:#e6f7ec}

/* Logo do portal configurável pelo menu administrativo. */
.site-brand-image {display:block;width:auto;height:auto;max-height:66px;max-width:270px;object-fit:contain;object-position:left center}
.admin-brand-image {display:block;width:auto;height:auto;max-height:76px;max-width:205px;object-fit:contain;object-position:left center}
.login-brand-image {display:block;width:auto;height:auto;max-height:90px;max-width:100%;object-fit:contain;object-position:left center}
.site-logo-preview {min-height:156px;padding:25px 20px;border:1px dashed #cbded2;background:#f7faf7;border-radius:13px;display:flex;align-items:center;justify-content:center;margin:14px 0 22px;max-width:560px}
.site-logo-preview img{max-width:100%;max-height:160px;object-fit:contain}
.site-logo-remove{border-top:1px solid #e7eee9;margin-top:22px;padding-top:19px}
.logo-settings-panel>.help {max-width:700px}
@media(max-width:650px){.site-brand-image{max-width:200px;max-height:53px}.admin-brand-image{max-height:55px}.site-logo-preview{min-height:125px;padding:18px}}
