@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-sans-400-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-sans-500-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/ibm-plex-sans-600-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/ibm-plex-sans-700-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--brand-navy:#123858;--brand-green:#08a184;--bg-primary:#fff;--bg-secondary:#f4f6f8;--bg-tertiary:#eef1f6;--bg-card:#fff;--bg-card-hover:#f8f9fb;--accent-dark:var(--brand-navy);--accent:var(--brand-green);--accent-light:#3cc4a8;--accent-hover:#067a64;--text-accent:#067a64;--accent-press:#05614f;--text-primary:var(--brand-navy);--text-secondary:#475569;--text-muted:#64748b;--border:#e2e8f0;--border-hover:#cbd5e1;--info-bg:#f0f4f8;--info-border:#c8d4e0;--ok-bg:#e8f6f2;--ok-border:#a9dccf;--ok-text:var(--accent-press);--warn-bg:#fffbeb;--warn-border:#fde68a;--warn-text:#92400e;--danger:#991b1b;--danger-bg:#fef2f2;--danger-border:#fecaca;--veil:#123858b8;--font-heading:"IBM Plex Sans", system-ui, sans-serif;--font-body:"IBM Plex Sans", system-ui, sans-serif;--font-friendly:"IBM Plex Sans", system-ui, sans-serif;--shadow-sm:0 1px 3px #12385814;--shadow-md:0 4px 12px #1238581a;--shadow-lg:0 8px 24px #1238581f;--shadow-glow:none;--container:1200px;--radius:8px;--radius-sm:4px;--ease:cubic-bezier(.16, 1, .3, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{background:var(--bg-primary);color:var(--text-primary);font-family:var(--font-body);-webkit-font-smoothing:antialiased;font-weight:400;line-height:1.6;overflow-x:hidden}a{color:inherit;text-decoration:none;transition:color .2s}a:hover{color:var(--text-accent)}img,svg{max-width:100%;display:block}.container{max-width:var(--container);margin:0 auto;padding:0 24px}.nav{z-index:1000;background:0 0;padding:18px 0;transition:background-color .2s,padding .2s,box-shadow .2s;position:fixed;top:0;left:0;right:0}.nav.scrolled{box-shadow:0 1px 0 var(--border);background:#fff;padding:10px 0}.nav-container{max-width:var(--container);justify-content:space-between;align-items:center;gap:24px;margin:0 auto;padding:0 24px;display:flex}.nav-logo{flex-shrink:0;align-items:center;display:flex}.nav-logo img{width:176px;height:auto;transition:width .2s}.nav.scrolled .nav-logo img{width:132px}.nav-menu{align-items:center;gap:30px;display:flex}.nav-menu a{font-family:var(--font-heading);letter-spacing:0;color:var(--brand-navy);font-size:.95rem;font-weight:600}.nav-menu a:hover{color:var(--text-accent)}.nav-cta{font-family:var(--font-heading);border-radius:var(--radius-sm);background:var(--accent-hover);color:#fff;flex-shrink:0;padding:12px 18px;font-size:.95rem;font-weight:600;transition:background-color .2s;box-shadow:inset 0 -3px #0000002e}.nav-cta:hover{background:var(--accent-press);color:#fff}.nav-toggle{cursor:pointer;background:0 0;border:none;flex-direction:column;gap:6px;padding:4px;display:none}.nav-toggle span{background:var(--accent-dark);border-radius:2px;width:26px;height:2.5px;transition:all .3s}.logo-text{font-family:var(--font-heading);letter-spacing:-.015em;color:var(--accent-dark);font-size:1.6rem;font-weight:700;line-height:1}.logo-x{color:var(--accent)}.btn{font-family:var(--font-heading);border-radius:var(--radius-sm);cursor:pointer;border:none;justify-content:center;align-items:center;padding:14px 24px;font-size:1rem;font-weight:600;transition:background-color .2s,border-color .2s,color .2s;display:inline-flex}.btn-primary{background:var(--accent-hover);color:#fff;box-shadow:inset 0 -3px #0000002e}.btn-primary:hover{background:var(--accent-press);color:#fff}.btn-primary:active{box-shadow:inset 0 2px #0003}.btn-secondary{color:var(--accent-dark);border:1.5px solid var(--border-hover);background:#fff}.btn-secondary:hover{border-color:var(--accent-dark);color:var(--accent-dark)}.hero{background:linear-gradient(to bottom, #fff 0, #fff 110px, #fff0 280px, #12385866 50%, #123858d9 100%), url(/imagens/obra-torres.webp) center 20% / cover no-repeat, var(--brand-navy);justify-content:center;align-items:center;padding:250px 0 130px;display:flex;position:relative;overflow:hidden}.hero:before{content:"";background:inherit;animation:hero-photo 1.6s var(--ease) both;position:absolute;inset:0}.hero-content{z-index:1;max-width:var(--container);text-align:center;width:100%;padding:0 24px;position:relative}.hero-content>*{animation:hero-rise .7s var(--ease) both}.hero-subtitle{animation-delay:.12s}.hero-actions{animation-delay:.24s}@keyframes hero-photo{0%{transform:scale(1.06)}}@keyframes hero-rise{0%{opacity:0;transform:translateY(16px)}}.hero-title{text-wrap:balance;max-width:1100px;font-family:var(--font-heading);letter-spacing:-.02em;color:#fff;margin:0 auto 26px;font-size:clamp(2.8rem,6.4vw,5.4rem);font-weight:700;line-height:1.02}.hero-title em{color:var(--accent-light);font-style:normal}.hero-subtitle{max-width:620px;font-family:var(--font-body);color:#ffffffe6;margin:0 auto 36px;font-size:clamp(1.05rem,1.8vw,1.2rem);line-height:1.75}.hero-actions{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.section{padding:100px 0;position:relative}.section-header{text-align:center;max-width:700px;margin:0 auto 64px}.section-label{font-family:var(--font-friendly);text-transform:uppercase;letter-spacing:.1em;color:var(--text-accent);margin-bottom:16px;font-size:.78rem;font-weight:700;display:inline-block}.section-title{font-family:var(--font-heading);letter-spacing:-.015em;color:var(--accent-dark);margin-bottom:20px;font-size:clamp(2rem,4vw,2.75rem);font-weight:700;line-height:1.15}.section-title em{color:var(--text-accent);font-style:normal}.section-desc{font-family:var(--font-body);color:var(--text-secondary);font-size:1.08rem;line-height:1.75}#conteudo>.section:first-child{padding-top:168px}#evolucao .section-header,#dna .section-header,#servicos .section-header{max-width:760px;margin:0 auto 56px}#servicos .section-header{max-width:960px}#evolucao .section-title,#dna .section-title,#servicos .section-title{text-wrap:balance;font-size:clamp(2.1rem,4.2vw,3rem);line-height:1.08}#evolucao{background:linear-gradient(var(--veil), var(--veil)), url(/imagens/obra-estrutura.webp) center / cover no-repeat, var(--brand-navy);padding:120px 0}#evolucao .section-title{color:#fff}#evolucao .section-title em{color:var(--accent-light)}#evolucao .section-desc{color:#ffffffe0}.steps{grid-template-columns:repeat(4,1fr);gap:40px;display:grid}.step{flex-direction:column;gap:14px;display:flex}.step-number{font-family:var(--font-heading);color:var(--accent-light);font-size:2.6rem;font-weight:700;line-height:1}.step-content h3{font-family:var(--font-heading);color:#fff;margin-bottom:10px;font-size:1.15rem;font-weight:600}.step-content p{font-family:var(--font-body);color:#ffffffd1;font-size:.95rem;line-height:1.65}#dna{background:var(--bg-primary);padding:120px 0}.dna-grid{grid-template-columns:repeat(4,1fr);display:grid}.dna-card{padding:28px 32px 0 0}.dna-card+.dna-card{border-left:1px solid var(--border);padding-left:28px}.dna-letter{font-family:var(--font-heading);letter-spacing:-.02em;color:var(--brand-navy);margin-bottom:20px;font-size:5.5rem;font-weight:700;line-height:.9}.dna-card-highlight .dna-letter{color:var(--accent)}.dna-card h3{font-family:var(--font-heading);color:var(--accent-dark);margin-bottom:14px;font-size:1.15rem;font-weight:700}.dna-card p{font-family:var(--font-body);color:var(--text-secondary);font-size:.92rem;line-height:1.65}#servicos{background:var(--bg-secondary);padding:112px 0}.svc-layout{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:72px;display:grid}.svc-aside{position:sticky;top:120px}.svc-ic{width:40px;height:40px;color:var(--accent-hover);fill:none;stroke:currentColor;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round}.svc-obra{background:var(--brand-navy);border-top:4px solid var(--brand-green);color:#fff;padding:32px}.svc-obra .svc-ic{width:36px;height:36px;color:var(--accent-light);margin-bottom:16px}.svc-obra h3{font-family:var(--font-heading);margin-bottom:8px;font-size:1.2rem;font-weight:700}.svc-obra p{color:#ffffffd1;margin-bottom:18px;font-size:.95rem}.svc-tags{flex-wrap:wrap;gap:8px;margin-bottom:24px;list-style:none;display:flex}.svc-tags li{border:1px solid #ffffff47;border-radius:3px;padding:5px 10px;font-size:.84rem}.svc-list{border-top:2px solid var(--brand-navy);list-style:none}.svc-row{border-bottom:1px solid var(--border-hover);grid-template-columns:48px minmax(0,1fr) 210px;align-items:start;gap:24px;padding:30px 0;display:grid}.svc-body h3{font-family:var(--font-heading);color:var(--accent-dark);margin-bottom:6px;font-size:1.2rem;font-weight:700}.svc-body p{color:var(--text-secondary);font-size:.95rem}.svc-items{border-left:1px solid var(--border-hover);padding-left:20px;list-style:none}.svc-items li{color:var(--accent-dark);padding:3px 0;font-size:.9rem}.cta{background:linear-gradient(90deg, #123858e6 0, #1238588c 70%, #12385859 100%), url(/imagens/obra-grua.webp) right 30% / cover no-repeat, var(--brand-navy);padding:140px 0}.cta-box{text-align:center;max-width:760px;margin:0 auto}.cta-title{font-family:var(--font-heading);letter-spacing:-.015em;color:#fff;margin-bottom:18px;font-size:clamp(2.1rem,4.2vw,3rem);font-weight:700;line-height:1.1}.cta-title em{color:var(--accent-light);font-style:normal}.cta-desc{max-width:600px;font-family:var(--font-body);color:#ffffffe0;margin-bottom:36px;margin-left:auto;margin-right:auto;font-size:1.08rem;line-height:1.75}.cta-actions{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.cta .btn-secondary{color:#fff;background:0 0;border:1.5px solid #ffffffb3}.cta .btn-secondary:hover{color:#fff;background:#ffffff1a;border-color:#fff}.footer{background:var(--brand-navy)}.footer svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.footer-contact-grid{grid-template-columns:repeat(3,auto);justify-content:space-between;display:grid}.footer-contact-item{color:#fff;align-items:center;gap:14px;padding:28px 32px;display:flex}.footer-contact-item:first-child{padding-left:0}.footer-contact-item:last-child{padding-right:0}.footer-contact-item+.footer-contact-item{border-left:1px solid #ffffff1f}.footer-contact-icon{color:var(--accent-light);flex:none;place-items:center;display:grid}.footer-contact-icon svg{width:26px;height:26px}.footer-contact-item small{color:#ffffffa6;font-size:.78rem;display:block}.footer-contact-item strong{font-family:var(--font-heading);white-space:nowrap;font-size:.95rem;font-weight:600;display:block}.footer-contact-item:hover{color:var(--accent-light)}.footer-bottom{background:#0c2a44}.footer-bottom-row{font-family:var(--font-body);color:#ffffffb3;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 24px;padding-top:18px;padding-bottom:18px;font-size:.86rem;display:flex}.footer-bottom-row p a{color:#fff;text-underline-offset:3px;margin-left:14px;text-decoration:underline}.back-to-top{color:#ffffffb3}.footer-bottom a:hover,.back-to-top:hover{color:var(--accent-light)}.wa-float{z-index:1500;background:var(--accent-hover);color:#fff;border-radius:50%;place-items:center;width:56px;height:56px;transition:background-color .2s;display:grid;position:fixed;bottom:20px;right:20px;box-shadow:0 2px 8px #12385840}body:has(.wa-float) .footer-bottom-row{padding-right:88px}.wa-float:hover{background:var(--accent-press);color:#fff}.wa-float svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linejoin:round;width:28px;height:28px}@media (width<=1024px){.nav-menu{gap:20px}.steps{grid-template-columns:1fr 1fr}.dna-grid{grid-template-columns:repeat(2,1fr)}.dna-card:nth-child(3){border-left:0;padding-left:0}.dna-card:nth-child(n+3){border-top:1px solid var(--border);margin-top:28px}.svc-layout{grid-template-columns:1fr;gap:48px}.svc-aside{position:static}.footer-contact-grid{grid-template-columns:1fr 1fr;justify-content:stretch}.footer-contact-item,.footer-contact-item:last-child{padding:24px 20px}.footer-contact-item:nth-child(odd){border-left:0;padding-left:0}.footer-contact-item:nth-child(n+3){border-top:1px solid #ffffff1f}.footer-contact-item:last-child:nth-child(odd){grid-column:1/-1}}@media (width<=768px){.nav-logo img{width:132px}}@media (width<=1120px){.nav-menu{border-bottom:1px solid var(--border);box-shadow:var(--shadow-md);background:#fff;flex-direction:column;align-items:flex-start;gap:18px;padding:24px;display:none;position:absolute;top:100%;left:0;right:0}.nav-menu a{font-size:.9rem}.nav-menu.active{display:flex}.nav-cta{display:none}.nav-toggle{display:flex}.nav-toggle.active span:first-child{transform:rotate(45deg)translate(5px,5px)}.nav-toggle.active span:nth-child(2){opacity:0}.nav-toggle.active span:nth-child(3){transform:rotate(-45deg)translate(5px,-5px)}}@media (width<=768px){.hero{background:linear-gradient(to bottom, #fff 0, #fff 90px, #fff0 200px, #1238588c 320px, #123858d9 100%), url(/imagens/obra-torres.webp) center 20% / cover no-repeat, var(--brand-navy);padding:170px 0 96px}#evolucao,#dna{padding:88px 0}#conteudo>.section:first-child{padding-top:128px}.steps{grid-template-columns:1fr;gap:32px}.dna-grid{grid-template-columns:1fr}.dna-card,.dna-card+.dna-card{border-left:0;grid-template-columns:72px 1fr;column-gap:16px;padding:24px 0 0;display:grid}.dna-card+.dna-card{border-top:1px solid var(--border);margin-top:24px}.dna-letter{grid-row:span 2;margin:0;font-size:3.6rem}#servicos{padding:88px 0}.svc-obra{padding:26px 22px}.svc-row{grid-template-columns:36px minmax(0,1fr);gap:16px;padding:24px 0}.svc-row .svc-ic{width:32px;height:32px}.svc-items{border-left:0;grid-column:2;padding-left:0}.svc-items li{display:inline}.svc-items li+li:before{content:" · ";color:var(--text-muted)}.cta{padding:96px 0}.footer-contact-grid{grid-template-columns:1fr}.footer-contact-item,.footer-contact-item:last-child,.footer-contact-item+.footer-contact-item{border-left:0;padding:18px 0}.footer-contact-item+.footer-contact-item{border-top:1px solid #ffffff1f}.footer-bottom-row{flex-direction:column;align-items:flex-start}.footer-bottom-row p a{width:fit-content;margin:6px 0 0;display:block}.wa-float{bottom:16px;right:12px}}@media (width<=480px){.hero-title{font-size:clamp(2rem,10vw,2.8rem)}.hero-actions .btn,.cta-actions .btn{width:100%}.footer-contact-item strong{white-space:normal;overflow-wrap:anywhere}}.skip-link{z-index:200;background:var(--accent-dark);color:#fff;font-family:var(--font-heading);border-radius:0 0 var(--radius-sm) var(--radius-sm);transition:transform var(--duration-base,.25s) var(--ease);padding:12px 24px;font-size:.9rem;font-weight:600;position:absolute;top:0;left:50%;transform:translate(-50%,-150%)}.skip-link:focus{color:#fff;transform:translate(-50%)}:focus-visible{outline:3px solid var(--accent-dark);outline-offset:2px;border-radius:2px}.hero :focus-visible,#evolucao :focus-visible,.svc-obra :focus-visible,.cta :focus-visible,.footer :focus-visible{outline-color:#fff}[id]{scroll-margin-top:96px}.nav-portal{color:var(--accent-hover)!important;font-weight:700!important}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.empty-state{text-align:center;color:var(--text-secondary);padding:60px 20px}.empty-state-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);padding:60px 32px}.empty-state-card h2{font-family:var(--font-heading);color:var(--accent-dark);margin-bottom:12px;font-size:1.4rem}.empty-state-card p{max-width:480px;margin:0 auto 28px}.notice{border-radius:var(--radius-sm);font-family:var(--font-body);margin-bottom:24px;padding:16px 20px;font-size:.92rem}.notice strong{font-family:var(--font-heading);margin-bottom:4px;font-weight:700;display:block}.notice-info{background:var(--info-bg);border:1px solid var(--info-border);color:var(--accent-dark)}.notice-ok{background:var(--ok-bg);border:1px solid var(--ok-border);color:var(--ok-text)}.notice-warn{background:var(--warn-bg);border:1px solid var(--warn-border);color:var(--warn-text)}.auth-error{background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:var(--radius-sm);color:var(--danger);margin-bottom:20px;padding:12px 16px;font-size:.9rem}.field{flex-direction:column;gap:8px;min-width:0;display:flex}.field-label{font-family:var(--font-friendly);color:var(--accent-dark);font-size:.85rem;font-weight:700}.input{width:100%;font-family:var(--font-body);color:var(--text-primary);background:var(--bg-primary);border:1.5px solid var(--text-muted);border-radius:var(--radius-sm);min-height:48px;transition:border-color .2s var(--ease);padding:12px 14px;font-size:1rem}.input:focus{border-color:var(--accent)}.input[type=file]{cursor:pointer;padding:10px 12px}.input[readonly]{background:var(--bg-secondary)}.textarea{resize:vertical;min-height:400px;font-family:ui-monospace,Consolas,monospace;font-size:.92rem;line-height:1.6}.field-hint{font-family:var(--font-body);color:var(--text-muted);font-size:.82rem}.field-hint.field-error{color:var(--danger)}.field-hint code{background:var(--bg-tertiary);overflow-wrap:anywhere;border-radius:3px;padding:1px 5px}button[aria-busy=true]{cursor:progress;opacity:.7;transform:none!important}.container-prose{max-width:720px;margin:0 auto;padding:0 20px}.badge{font-family:var(--font-friendly);text-transform:uppercase;letter-spacing:.08em;border-radius:var(--radius-sm);padding:4px 8px;font-size:.68rem;font-weight:700;display:inline-block}.badge-noticia{background:var(--bg-tertiary);color:var(--text-secondary)}.badge-materia{color:var(--accent-hover);box-shadow:inset 0 0 0 1px var(--accent-hover)}.badge-comunicado{background:var(--accent-hover);color:#fff}.news-filters{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:center;gap:4px 28px;margin-bottom:48px;display:flex}.news-filter{font-family:var(--font-friendly);color:var(--text-secondary);transition:border-color .2s var(--ease), color .2s var(--ease);border-bottom:3px solid #0000;margin-bottom:-1px;padding:12px 2px;font-size:.95rem;font-weight:600}.news-filter:hover{border-bottom-color:var(--border-hover);color:var(--accent-dark)}.news-filter.active{border-bottom-color:var(--accent);color:var(--accent-dark);font-weight:700}.news-grid{grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr));gap:24px;display:grid}.news-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);transition:border-color .2s var(--ease);padding:28px;position:relative}.news-card:hover{border-color:var(--accent-hover)}.news-card-featured{border-left:3px solid var(--accent);background:var(--bg-secondary);grid-column:1/-1;margin-bottom:24px}.news-card-meta{font-family:var(--font-friendly);color:var(--text-muted);align-items:center;gap:12px;margin-bottom:16px;font-size:.8rem;display:flex}.news-card-title{font-family:var(--font-heading);letter-spacing:-.01em;color:var(--accent-dark);margin-bottom:12px;font-size:1.25rem;font-weight:700;line-height:1.3}.news-card-featured .news-card-title{font-size:1.6rem}.news-card-title a{color:inherit}.news-card-title a:after{content:"";position:absolute;inset:0}.news-card:hover .news-card-title a,.news-card-title a:hover{color:var(--accent-hover)}.news-card-excerpt{font-family:var(--font-body);color:var(--text-secondary);font-size:.95rem;line-height:1.7}.pagination{font-family:var(--font-friendly);justify-content:center;align-items:center;gap:20px;margin-top:56px;font-weight:600;display:flex}.pagination-info{color:var(--text-muted);font-size:.9rem}.article{padding:168px 0 100px}.article-header{margin-bottom:40px}.article-meta{font-family:var(--font-friendly);color:var(--text-muted);align-items:center;gap:12px;margin-bottom:20px;font-size:.85rem;display:flex}.article-title{font-family:var(--font-heading);letter-spacing:-.015em;color:var(--accent-dark);margin-bottom:20px;font-size:clamp(2rem,4vw,2.75rem);font-weight:700;line-height:1.15}.article-lead{font-family:var(--font-body);color:var(--text-secondary);font-size:1.15rem;line-height:1.7}.article-cover{border-radius:var(--radius);width:100%;height:auto;margin-bottom:40px}.prose{font-family:var(--font-body);color:var(--text-secondary);font-size:1.08rem;line-height:1.8}.prose>*+*{margin-top:1.4em}.prose h2,.prose h3{font-family:var(--font-heading);color:var(--accent-dark);letter-spacing:-.01em;margin-top:2em;line-height:1.3}.prose h2{font-size:1.6rem;font-weight:700}.prose h3{font-size:1.25rem;font-weight:600}.prose a{color:var(--accent-hover);text-underline-offset:3px;text-decoration:underline}.prose strong{color:var(--accent-dark);font-weight:600}.prose ul,.prose ol{padding-left:1.4em}.prose li+li{margin-top:.5em}.prose blockquote{border-left:3px solid var(--accent);color:var(--text-muted);padding-left:20px;font-style:italic}.prose img{border-radius:var(--radius-sm);width:100%;height:auto}.prose code{background:var(--bg-tertiary);border-radius:4px;padding:2px 6px;font-size:.9em}.prose pre{background:var(--bg-tertiary);border-radius:var(--radius-sm);padding:20px;overflow-x:auto}.prose table{border-collapse:collapse;max-width:100%;font-size:.95rem;display:block;overflow-x:auto}.prose th,.prose td{border:1px solid var(--border);text-align:left;padding:10px 14px}.prose th{background:var(--bg-secondary);color:var(--accent-dark);font-weight:600}.article-footer{border-top:1px solid var(--border);flex-wrap:wrap;gap:16px;margin-top:64px;padding-top:40px;display:flex}.auth{justify-content:center;align-items:center;min-height:100vh;padding:140px 20px 80px;display:flex}.auth-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:440px;box-shadow:var(--shadow-sm);padding:40px}.auth-title{font-family:var(--font-heading);letter-spacing:-.015em;color:var(--accent-dark);margin-bottom:12px;font-size:1.75rem;font-weight:700}.auth-desc{font-family:var(--font-body);color:var(--text-secondary);margin-bottom:28px;font-size:.95rem}.auth-desc a{color:var(--accent-hover);font-weight:500}.auth-form{flex-direction:column;gap:20px;display:flex}.auth-submit{width:100%;margin-top:4px}.auth-alt{text-align:center;font-family:var(--font-body);margin-top:20px;font-size:.9rem}.auth-alt a{color:var(--text-accent);font-weight:500}.portal-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:48px;display:flex}@media (width<=768px){.article{padding:128px 0 60px}.news-card-featured .news-card-title{font-size:1.35rem}}@media (width<=480px){.news-filters{scrollbar-width:none;flex-wrap:nowrap;justify-content:space-between;gap:8px;overflow-x:auto}.news-filter{flex:none;margin-bottom:0;font-size:.85rem}.auth{padding:110px 16px 60px}.auth-card{padding:28px 22px}.news-card{padding:22px}}.steps{padding-top:32px;position:relative}.steps:before,.steps:after{content:"";height:2px;position:absolute;top:0;left:0;right:0}.steps:before{background:#ffffff26}.steps:after{background:var(--accent-light);transform-origin:0;transition:transform 1.2s var(--ease)}.step{transition:opacity .5s var(--ease), transform .5s var(--ease)}.step-number{transition:color .4s}.step:nth-child(2),.step:nth-child(2) .step-number{transition-delay:.3s}.step:nth-child(3),.step:nth-child(3) .step-number{transition-delay:.6s}.step:nth-child(4),.step:nth-child(4) .step-number{transition-delay:.9s}.dna-grid{border-top:0;padding-top:2px;position:relative}.dna-grid:before{content:"";background:var(--brand-navy);transform-origin:0;height:2px;transition:transform .9s var(--ease);position:absolute;top:0;left:0;right:0}.dna-card{transition:opacity .6s var(--ease), transform .6s var(--ease)}.dna-card:first-child{transition-delay:.25s}.dna-card:nth-child(2){transition-delay:.37s}.dna-card:nth-child(3){transition-delay:.49s}.dna-card:nth-child(4){transition-delay:.61s}.svc-row{transition:opacity .5s var(--ease), transform .5s var(--ease);position:relative}@media (scripting:enabled) and (prefers-reduced-motion:no-preference){.steps:not(.is-visible):after{transform:scaleX(0)}.steps:not(.is-visible) .step{opacity:0;transform:translateY(12px)}.steps:not(.is-visible) .step-number{color:#ffffff4d}.dna-grid:not(.is-visible):before{transform:scaleX(0)}.dna-grid:not(.is-visible) .dna-card{opacity:0;transform:translateY(24px)}.svc-row:not(.is-visible){opacity:0;transform:translateY(16px)}}@media (width<=1024px) and (width>=769px){.steps{padding-top:0}.steps:before,.steps:after{display:none}}@media (width<=768px){.steps{padding:0 0 0 28px}.steps:before,.steps:after{width:2px;height:auto;bottom:0;right:auto}.steps:after{transform-origin:top}@media (scripting:enabled) and (prefers-reduced-motion:no-preference){.steps:not(.is-visible):after{transform:scaleY(0)}}}@media (hover:hover){.svc-row:before{content:"";background:var(--accent-hover);width:3px;transition:transform .25s var(--ease);position:absolute;top:30px;bottom:30px;left:-20px;transform:scaleY(0)}.svc-row:hover:before{transform:scaleY(1)}}
