/* Caixas acolhedoras, títulos diretos e ações bem definidas. */
.section{padding-top:80px;padding-bottom:80px}.section-heading,.portfolio .section-heading,.process .process-heading{margin-left:auto;margin-right:auto;text-align:center}.portfolio .section-heading .intro{margin-left:auto}.filters{justify-content:center}.filters button{background:#fffdf7;border:1px solid #b4c8bc;font-size:16px;padding:11px 25px;font-weight:500}.filters button.active,.filters button[aria-pressed=true],.filters button:hover{background:#193431;color:#fff;border-color:#193431}.filters button:focus-visible{outline-color:#b45d47}.project{background:#fffdf7;border:1px solid #d4ded1;border-radius:24px;overflow:hidden;padding-bottom:21px;box-shadow:0 8px 24px #19343108}.project .picture{border-radius:0}.project .view{display:none}.project-title{padding:0 21px;font-size:24px}.project .category{display:block;padding:4px 21px 0;font-size:16px}.project-grid{gap:24px}.ribbon-project,.ribbon-project:nth-child(even){border-radius:24px}.project-ribbon{padding:65px 0}.transformation{background:#193431;color:#fff8ed}.transformation:before{display:none}.transformation-heading{display:block;text-align:center;margin-bottom:35px}.transformation h2{max-width:none}.transformation h2 em{color:#f2b49e}.transformation-heading>p{max-width:none;margin-top:18px;color:#e2e7dc;font-size:18px}.room-comparison{border-radius:26px;border:1px solid #ffffff25;box-shadow:0 20px 45px #0002}.room-comparison:focus-within{outline-color:#f08068}.comparison-label{font-size:15px}.atelier{background:#e7eee2;color:#193431}.atelier:before{display:none}.atelier-heading{display:block;text-align:center}.atelier-heading h2{max-width:none}.atelier-heading h2 em{color:#167d78}.atelier-heading>p{color:#596a60;max-width:none;margin-top:20px;font-size:18px}.work-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:24px}.work-card{grid-column:span 2;border-radius:25px;overflow:hidden;background:#fffdf7;border:1px solid #cbd7c7;box-shadow:0 8px 24px #19343108}.work-card:nth-last-child(-n+2){grid-column:span 3}.work-card>img{height:220px;object-fit:cover}.work-card:nth-child(2)>img,.work-card:nth-child(5)>img{object-fit:contain;background:#eee8da}.work-card:nth-child(3)>img{object-position:right}.work-copy{padding:26px}.step-label{display:inline-flex;padding:6px 15px;border-radius:12px;font-size:16px;font-weight:600;background:#f9d4c6;color:#64392e;margin-bottom:18px}.work-card h3{font-size:27px;line-height:1.25;margin-bottom:15px}.work-card p{font-size:18px;line-height:1.65;color:#596a60}.process .process-heading h2{max-width:850px;margin:auto}.process .steps{width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-bottom:0}.process .steps article{padding:30px;background:#284b43;border:1px solid #73908070;border-radius:25px;box-shadow:0 8px 20px #0000000a}.process .steps article h3{font-size:27px}.process .steps article p{font-size:18px;color:#e0e8db}.detail-icon,.process .detail-icon{background:#f08068;color:#193431;border-radius:14px;width:48px;height:48px}.service-grid article{border-radius:25px;border:1px solid #cbd7c7}.service-grid p{font-size:18px}.faq-layout>div:first-child{text-align:center;margin-left:auto;margin-right:auto}.questions{display:grid;gap:15px;border:0}.questions details{background:#fffcf5;border:1px solid #d2dacb;border-radius:19px;overflow:hidden}.questions summary{padding:22px 25px;font-size:18px}.questions details p{padding:0 25px 24px;font-size:17px;color:#526556}.questions summary>span{background:#f9d4c6;width:30px;height:30px;flex-basis:30px}.questions summary>span:after{color:#683c30}.text-link{border:1px solid #167d78;border-radius:50px;background:#167d78;color:white;padding:15px 25px}.socials button,.quiz-back,.quiz-restart{border:1px solid #ffffff30;border-radius:14px;background:#365c50;color:#fff;padding:11px 18px;font-size:16px;text-align:center;text-decoration:none}.quiz-back,.quiz-restart{background:#e2eadd;color:#193431;border-color:#c3d1be}.quiz-restart{margin-top:16px}.diagnostic-intro>p{margin-top:20px}.quiz-shell .quiz-note{font-size:16px}.footer-bottom,.footer-bottom p{font-size:13px}.bubble{border:1px solid #19343118}.marquee #marquee-toggle{display:none}.marquee:hover .marquee-track,.marquee:focus-within .marquee-track{animation-play-state:paused}.button{border-radius:16px;font-size:17px}.quiz-shell .button{font-size:16px;border-radius:16px}.hero-description{font-size:18px}.contact-status:empty{display:none}
[data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s ease;transition-delay:var(--reveal-delay,0ms)}[data-reveal].in-view{opacity:1;transform:translateY(0)}
@media(max-width:1100px){.work-card{grid-column:span 3}.work-card:nth-last-child(-n+2){grid-column:span 3}.work-card:last-child{grid-column:span 6}.project-title{font-size:25px}}
@media(max-width:760px){.section{padding-top:60px;padding-bottom:60px}.project-ribbon{padding:45px 0}.project-ribbon h2,.portfolio .section-heading h2,.transformation h2,.atelier-heading h2,.faq h2{font-size:33px;line-height:1.25}.work-grid{grid-template-columns:1fr;gap:22px}.work-card,.work-card:nth-last-child(-n+2),.work-card:last-child{grid-column:auto}.work-card>img{height:235px}.work-copy{padding:24px}.work-card h3{font-size:26px}.process .steps{grid-template-columns:1fr}.process .steps article{padding:26px}.process .process-heading h2 br{display:none}.room-comparison{border-radius:20px}.comparison-label{font-size:14px}.filters button{font-size:15px;padding:10px 17px}.questions summary{font-size:17px;padding:21px 20px}.questions details p{padding:0 20px 22px}.button,.hero .button{font-size:16px}.hero-description{font-size:18px}.project .category{font-size:16px}.ribbon-project{border-radius:20px}.diagnostic{padding:25px 19px}.footer-bottom p{font-size:13px}}
@media(prefers-reduced-motion:reduce){[data-reveal]{opacity:1;transform:none;transition:none}.conversation.play .bubble{animation:none;opacity:1;transform:none}html{scroll-behavior:auto}}
@media(max-width:760px){.about.section{padding-top:355px;padding-bottom:60px}}
/* Etapas numeradas com conexão que percorre a sequência. */
.work-grid{position:relative;isolation:isolate;gap:90px 48px;padding-top:34px}.work-card{position:relative;z-index:1;overflow:visible;min-height:235px;box-shadow:0 10px 25px #19343108}.work-copy{padding:95px 28px 30px}.work-number{position:absolute;top:-32px;left:25px;width:110px;height:110px;display:grid;place-items:center;border-radius:25px;background:#167d78;color:#fff9ed;font:500 78px/1 Lora,Georgia,serif;letter-spacing:-5px;padding-right:5px;box-shadow:0 7px 0 #e7eee2,0 12px 24px #19343114}.work-card:nth-of-type(even) .work-number{background:#193431}.work-card:nth-of-type(3) .work-number{background:#f08068;color:#193431}.work-card h3{font-size:26px}.work-card p{font-size:18px}.atelier-heading{margin-bottom:50px}.step-connections{position:absolute;inset:0;z-index:0;width:100%;height:100%;overflow:visible;pointer-events:none;fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.connection-base{stroke:#bdcfc0}.connection-flow{stroke:#d57b64;stroke-dasharray:var(--trace-length);stroke-dashoffset:var(--trace-length)}.timeline-running .connection-flow{animation:trace-steps 7s ease-in-out infinite}@keyframes trace-steps{0%,5%{stroke-dashoffset:var(--trace-length);opacity:1}78%,90%{stroke-dashoffset:0;opacity:1}100%{stroke-dashoffset:0;opacity:0}}
@media(max-width:1100px){.work-grid{gap:90px 40px}.work-card:last-child{grid-column:span 6}}
@media(max-width:760px){.work-grid{gap:85px;padding-top:30px}.work-card,.work-card:last-child{grid-column:auto;min-height:0}.work-copy{padding:86px 25px 27px}.work-number{width:100px;height:100px;font-size:72px;border-radius:23px;left:24px;top:-30px}.work-card h3{font-size:26px}.atelier-heading{margin-bottom:40px}.step-connections{stroke-width:3}}
@media(prefers-reduced-motion:reduce){.timeline-running .connection-flow{animation:none;stroke-dashoffset:0;opacity:1}}
/* Assinatura e contatos no rodapé. */
footer{background:#122c28;color:#f8f2e6;padding-top:55px}footer .footer-top{padding-bottom:35px;gap:40px}footer .footer-brand{display:block;width:360px;max-width:100%;height:88px;overflow:hidden}footer .footer-brand img{height:100%;object-fit:cover;filter:brightness(0) invert(96%) sepia(8%) saturate(340%) hue-rotate(345deg)}footer .footer-top p{color:#d4ded2;font-size:17px;margin-top:14px}footer .socials{display:grid;grid-template-columns:1fr 1fr;gap:14px}footer .socials button{display:flex;align-items:center;justify-content:center;gap:12px;padding:15px 20px;border:1px solid #65847a;border-radius:16px;background:#23483f;color:#fff8ed;transition:background .2s,border-color .2s,transform .2s}footer .socials button:hover{background:#346557;border-color:#9ab9a9;transform:translateY(-3px)}footer .socials button svg{width:24px;height:24px;flex-shrink:0}footer .socials #social-status{grid-column:1/-1;max-width:340px;font-size:15px}footer .socials #social-status:empty{display:none}footer .back-top{background:#23483f;border-color:#65847a;color:#fff8ed}footer .footer-bottom{color:#b9cbbf;border-color:#ffffff26}
@media(max-width:760px){footer .footer-top{display:flex;flex-direction:column;align-items:flex-start;gap:27px}footer .footer-brand{width:290px;height:75px}footer .socials{width:100%;gap:12px}footer .socials button{font-size:16px;padding:14px 15px}footer .back-top{align-self:flex-end;margin-top:-5px}footer .footer-bottom{gap:18px}}
/* WhatsApp reconhecível, com halo de luz suave. */
.floating-contact{background:#25d366;color:#fff;isolation:isolate;box-shadow:0 5px 22px #128c7e50}.floating-contact svg{width:30px;height:30px;position:relative;z-index:1}.floating-contact::before,.floating-contact::after{content:'';position:absolute;inset:0;border-radius:50%;background:#25d366;z-index:-1;pointer-events:none;animation:whatsapp-glow 2.6s ease-out infinite}.floating-contact::after{animation-delay:1.3s}.floating-contact:hover{background:#20bd5a}.floating-contact:focus-visible{outline:3px solid #128c7e;outline-offset:6px}footer .socials .whatsapp svg{color:#25d366}@keyframes whatsapp-glow{0%{transform:scale(1);opacity:.5;box-shadow:0 0 14px #25d36670}85%,100%{transform:scale(1.65);opacity:0;box-shadow:0 0 28px #25d36600}}@media(prefers-reduced-motion:reduce){.floating-contact::before,.floating-contact::after{animation:none;opacity:0}.floating-contact{box-shadow:0 0 20px #25d36665}}
