:root{--red: #CF2622;--red-dk: #A81E1B;--dark: #1A1A1A;--mid: #333333;--text: #444444;--stone: #888888;--light: #F5F5F5;--rule: #E0E0E0;--white: #FFFFFF;--font-sans: "Montserrat", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4rem;--space-9: 6rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--shadow-sm: 0 1px 2px rgba(0,0,0,.05);--shadow-md: 0 4px 12px rgba(0,0,0,.08);--shadow-lg: 0 12px 32px rgba(0,0,0,.12);--container: 1200px;--container-narrow: 880px;--nav-height: 80px;--transition: .2s ease}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-sans);font-weight:400;color:var(--text);background:var(--white);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{max-width:100%;height:auto;display:block}a{color:var(--red);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--red-dk)}h1,h2,h3,h4,h5,h6{margin:0 0 var(--space-4);color:var(--dark);font-weight:800;line-height:1.2;letter-spacing:-.01em}h1{font-size:clamp(2rem,4vw + 1rem,3.5rem);font-weight:900}h2{font-size:clamp(1.75rem,2.5vw + 1rem,2.5rem)}h3{font-size:clamp(1.25rem,1.5vw + .75rem,1.75rem)}h4{font-size:1.125rem;font-weight:700}p{margin:0 0 var(--space-4)}.container{width:100%;max-width:var(--container);margin:0 auto;padding-left:var(--space-5);padding-right:var(--space-5)}.container-narrow{width:100%;max-width:var(--container-narrow);margin:0 auto;padding-left:var(--space-5);padding-right:var(--space-5)}.section{padding:var(--space-9) 0}.section-sm{padding:var(--space-7) 0}.section-dark{background:var(--dark);color:#d4d4d4}.section-dark h1,.section-dark h2,.section-dark h3{color:var(--white)}.section-light{background:var(--light)}.eyebrow{display:inline-block;font-size:.75rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--red);margin-bottom:var(--space-4)}.grid{display:grid;gap:var(--space-6)}.grid-2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:.95rem 1.75rem;font-family:inherit;font-size:.95rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;border:2px solid transparent;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition);text-decoration:none;line-height:1}.btn svg{width:18px;height:18px}.btn-primary{background:var(--red);color:var(--white);border-color:var(--red)}.btn-primary:hover{background:var(--red-dk);border-color:var(--red-dk);color:var(--white)}.btn-secondary{background:transparent;color:var(--dark);border-color:var(--dark)}.btn-secondary:hover{background:var(--dark);color:var(--white)}.btn-ghost{background:transparent;color:var(--white);border-color:#fff6}.btn-ghost:hover{background:var(--white);color:var(--dark);border-color:var(--white)}.tc-icon{display:inline-block;vertical-align:middle;flex-shrink:0;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.tc-icon *{stroke:currentColor;fill:none;vector-effect:non-scaling-stroke}.nav{position:sticky;top:0;z-index:100;background:#fffffff5;backdrop-filter:blur(8px);border-bottom:1px solid var(--rule);height:var(--nav-height)}.nav-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-5)}.nav-logo{display:flex;align-items:center;text-decoration:none;color:var(--dark);min-width:0}.nav-logo-img{height:30px;width:auto;display:block}.nav-links-desktop ul{display:flex;gap:var(--space-5);list-style:none;margin:0;padding:0}.nav-links-desktop a{color:var(--dark);font-weight:600;font-size:.92rem;position:relative;padding:6px 0;text-decoration:none}.nav-links-desktop a:after{content:"";position:absolute;left:0;bottom:0;width:0;height:2px;background:var(--red);transition:width var(--transition)}.nav-links-desktop a:hover:after,.nav-links-desktop a.active:after{width:100%}.nav-actions{display:flex;align-items:center;gap:var(--space-4)}.nav-toggle{display:none;background:none;border:0;cursor:pointer;padding:var(--space-2);margin-left:var(--space-3)}.nav-toggle span{display:block;width:26px;height:2px;background:var(--dark);margin:6px 0;border-radius:1px;transition:var(--transition)}.drawer-overlay{position:fixed;inset:0;background:#00000080;z-index:199;opacity:0;transition:opacity .25s ease-in-out}.drawer-overlay.is-open{opacity:1}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(280px,86vw);background:var(--white);z-index:200;display:flex;flex-direction:column;transform:translate(100%);transition:transform .25s ease-in-out;box-shadow:-8px 0 32px #0000002e;visibility:hidden}.drawer.is-open{transform:translate(0);visibility:visible}.drawer-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--rule)}.drawer-logo{height:28px;width:auto}.drawer-close{background:none;border:0;cursor:pointer;padding:var(--space-2);color:var(--dark);display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm)}.drawer-close:hover{background:var(--light)}.drawer-nav{flex:1;overflow-y:auto;padding:var(--space-3) 0}.drawer-nav ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column}.drawer-nav a{display:block;padding:var(--space-4) var(--space-5);color:var(--dark);text-decoration:none;font-weight:600;font-size:1.05rem;border-left:3px solid transparent;transition:background var(--transition),border-color var(--transition)}.drawer-nav a:hover{background:var(--light)}.drawer-nav a.active{border-left-color:var(--red);color:var(--red)}.drawer-footer{padding:var(--space-4) var(--space-5);border-top:1px solid var(--rule);display:flex;flex-direction:column;gap:var(--space-4)}.drawer-cta{justify-content:center;width:100%;white-space:nowrap;font-size:.82rem;letter-spacing:.01em;padding:.85rem 1rem;text-align:center}.drawer-lang{justify-content:center}@media (max-width: 900px){.nav-toggle{display:block}.nav-links-desktop,.nav-actions .lang-switcher,.nav-logo-sub{display:none}}.lang-switcher{display:flex;gap:4px;font-size:.85rem;font-weight:700}.lang-switcher a{color:var(--stone);text-decoration:none;padding:4px 8px;border-radius:var(--radius-sm)}.lang-switcher a.active{color:var(--white);background:var(--dark)}.hero{position:relative;background:var(--dark);color:var(--white);overflow:hidden;padding:var(--space-9) 0;min-height:80vh;display:flex;align-items:center}.hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:var(--space-7);align-items:center}.hero h1{color:var(--white);margin-bottom:var(--space-5)}.hero p{color:#fffc;font-size:1.125rem;max-width:540px;margin-bottom:var(--space-6)}.hero-image{position:relative;display:flex;align-items:center;justify-content:center}.hero-image img{max-width:100%;max-height:580px;object-fit:contain;filter:drop-shadow(0 20px 40px rgba(207,38,34,.25))}.hero-fallback{font-size:clamp(12rem,28vw,28rem);font-weight:900;color:var(--red);line-height:.85;letter-spacing:-.05em;text-align:center}@media (max-width: 900px){.hero{min-height:auto;padding:var(--space-7) 0}.hero-inner{grid-template-columns:1fr;gap:var(--space-6)}.hero-fallback{font-size:12rem}}.stats{background:var(--white);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-6);padding:var(--space-7) 0;text-align:center}.stat-value{font-size:clamp(2.5rem,4vw,3.5rem);font-weight:900;color:var(--red);line-height:1;margin-bottom:var(--space-2)}.stat-label{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--stone)}.card{background:var(--white);border:1px solid var(--rule);border-radius:var(--radius-md);overflow:hidden;transition:transform var(--transition),box-shadow var(--transition);display:flex;flex-direction:column;text-decoration:none;color:inherit}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);color:inherit}.card-image{aspect-ratio:16/10;background:var(--light);position:relative;overflow:hidden}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.card:hover .card-image img{transform:scale(1.05)}.card-body{padding:var(--space-5);flex:1;display:flex;flex-direction:column}.card-title{font-size:1.15rem;font-weight:700;color:var(--dark);margin:0 0 var(--space-2)}.card-meta{font-size:.8rem;color:var(--stone);text-transform:uppercase;letter-spacing:.06em;font-weight:600;margin-bottom:var(--space-3)}.card-text{color:var(--text);font-size:.95rem;margin:0 0 var(--space-4);flex:1}.badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:100px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.badge-icf{background:var(--red);color:var(--white)}.badge-available{background:#2d8c4f;color:var(--white)}.badge-reserved{background:#d97706;color:var(--white)}.badge-sold{background:var(--stone);color:var(--white)}.card-badges{position:absolute;top:var(--space-3);left:var(--space-3);display:flex;gap:6px;z-index:2}.imovel-price{font-size:1.5rem;font-weight:900;color:var(--red);margin-bottom:var(--space-3)}.imovel-specs{display:flex;gap:var(--space-4);font-size:.85rem;color:var(--stone);padding-top:var(--space-3);border-top:1px solid var(--rule);margin-top:auto}.imovel-specs span{display:flex;align-items:center;gap:4px}.form{display:grid;gap:var(--space-4)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}@media (max-width: 600px){.form-row{grid-template-columns:1fr}}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:.85rem;font-weight:600;color:var(--mid)}.form-group input,.form-group textarea,.form-group select{font-family:inherit;font-size:1rem;padding:.85rem 1rem;border:1px solid var(--rule);border-radius:var(--radius-sm);background:var(--white);color:var(--dark);transition:border-color var(--transition),box-shadow var(--transition)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:0;border-color:var(--red);box-shadow:0 0 0 3px #cf262226}.form-group textarea{min-height:140px;resize:vertical}.form-group.has-error input,.form-group.has-error textarea,.form-group.has-error select,.form-group input:user-invalid:not(:focus),.form-group textarea:user-invalid:not(:focus),.form-group select:user-invalid:not(:focus){border-color:var(--red);box-shadow:0 0 0 3px #cf26221f}.form-error{display:block;color:var(--red);font-size:.8rem;min-height:1.2em}.form-check{display:flex;align-items:flex-start;gap:var(--space-3);font-size:.9rem}.form-check input{margin-top:4px;accent-color:var(--red)}.honeypot{position:absolute;left:-9999px}.footer{background:var(--dark);color:#ffffffb3;padding:var(--space-8) 0 var(--space-6)}.footer h4{color:var(--white);font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-4)}.footer a{color:#ffffffb3;text-decoration:none}.footer a:hover{color:var(--white)}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:var(--space-7);margin-bottom:var(--space-7)}@media (max-width: 800px){.footer-grid{grid-template-columns:1fr 1fr}}@media (max-width: 500px){.footer-grid{grid-template-columns:1fr}}.footer ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-2)}.footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3);padding-top:var(--space-5);border-top:1px solid rgba(255,255,255,.1);font-size:.85rem}.footer-logo-img{height:30px;width:auto;display:block}.footer-credit a{color:inherit;text-decoration:none;transition:color var(--transition)}.footer-credit a:hover{color:var(--red);text-decoration:underline}.social-links{display:flex;gap:var(--space-3)}.social-links a{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#ffffff14;color:var(--white);transition:background var(--transition)}.social-links a:hover{background:var(--red)}.social-links svg{width:18px;height:18px}.cookie-banner{position:fixed;bottom:var(--space-4);left:var(--space-4);right:var(--space-4);max-width:540px;margin:0 auto;background:var(--white);border:1px solid var(--rule);border-radius:var(--radius-md);padding:var(--space-5);box-shadow:var(--shadow-lg);z-index:250;display:none}.cookie-banner.is-open{display:block}.cookie-banner h4{margin-bottom:var(--space-2);color:var(--dark)}.cookie-banner p{font-size:.9rem;margin-bottom:var(--space-4)}.cookie-banner-actions{display:flex;gap:var(--space-3);flex-wrap:wrap}.cookie-banner .btn{padding:.7rem 1.2rem;font-size:.8rem}.modal-root{position:fixed;inset:0;z-index:300;display:none;align-items:center;justify-content:center;padding:var(--space-4)}.modal-root.is-open{display:flex}.modal-backdrop{position:absolute;inset:0;background:#0009;animation:modalFadeIn .2s ease both}.modal-card{position:relative;background:var(--white);border-radius:var(--radius-md);max-width:520px;width:100%;max-height:calc(100vh - var(--space-6));overflow-y:auto;padding:var(--space-6);box-shadow:var(--shadow-lg);animation:modalSlideIn .22s ease both}.modal-close{position:absolute;top:var(--space-3);right:var(--space-3);background:var(--light);border:0;cursor:pointer;padding:8px;color:var(--dark);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;transition:background var(--transition)}.modal-close:hover{background:var(--rule)}.modal-title{margin:0 0 var(--space-2);padding-right:var(--space-7)}.modal-subtitle{color:var(--stone);font-size:.9rem;margin:0 0 var(--space-5)}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.cta-strip{background:var(--red);color:var(--white);padding:var(--space-7) 0}.cta-strip-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);flex-wrap:wrap}.cta-strip h2{color:var(--white);margin:0;max-width:720px}.cta-strip .btn-ghost{border-color:var(--white)}.filters{display:flex;gap:var(--space-4);flex-wrap:wrap;padding:var(--space-5);background:var(--light);border-radius:var(--radius-md);margin-bottom:var(--space-6);align-items:end}.filter-group{display:flex;flex-direction:column;gap:4px;min-width:160px}.filter-group label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--stone)}.filter-group select{padding:.6rem .8rem;border:1px solid var(--rule);border-radius:var(--radius-sm);background:var(--white);font-family:inherit;font-size:.95rem}.filter-toggle{display:flex;align-items:center;gap:var(--space-2);padding:.65rem 0;font-weight:600;font-size:.9rem;cursor:pointer}.filter-toggle input{accent-color:var(--red)}.pagination{display:flex;justify-content:center;gap:var(--space-2);margin-top:var(--space-7)}.pagination button{min-width:40px;height:40px;border:1px solid var(--rule);background:var(--white);border-radius:var(--radius-sm);font-family:inherit;font-weight:600;cursor:pointer;transition:all var(--transition)}.pagination button.active{background:var(--red);color:var(--white);border-color:var(--red)}.pagination button:hover:not(.active){border-color:var(--dark)}.pagination button:disabled{opacity:.4;cursor:not-allowed}.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-4)}.gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius-md)}.prose{max-width:760px}.prose h2{margin-top:var(--space-7)}.prose h3{margin-top:var(--space-6)}.prose ul,.prose ol{padding-left:var(--space-5);margin-bottom:var(--space-4)}.prose li{margin-bottom:var(--space-2)}.prose a{text-decoration:underline}.text-center{text-align:center}.mt-0{margin-top:0}.mb-0{margin-bottom:0}.mt-4{margin-top:var(--space-4)}.mb-4{margin-bottom:var(--space-4)}.flex{display:flex}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-4{gap:var(--space-4)}.hidden{display:none!important}.icon-circle{display:inline-flex;align-items:center;justify-content:center;flex:0 0 56px;width:56px;height:56px;min-width:56px;border-radius:50%;background:#cf262214;color:var(--red);margin-bottom:var(--space-4)}.icon-circle .tc-icon{width:24px;height:24px}.service-card{background:var(--white);border:1px solid var(--rule);border-radius:var(--radius-md);padding:var(--space-6);transition:all var(--transition)}.service-card:hover{border-color:var(--red);transform:translateY(-2px)}.service-card h3{font-size:1.15rem;margin-bottom:var(--space-3)}.value-card{text-align:left}.value-card h3{font-size:1.05rem;margin-bottom:var(--space-2)}.team-card{text-align:center}.team-photo{width:160px;height:160px;border-radius:50%;margin:0 auto var(--space-3);background:var(--light);object-fit:cover}
