.history-carousel,.voices{ box-sizing: border-box; font-family: "DM Sans", Arial, sans-serif; }
.history-carousel *,.voices *{ box-sizing: border-box; }
.history-carousel{ padding: 64px max(20px, calc((100vw - 1020px) / 2)) 54px; overflow: hidden; background: #f5f0e9; color: #211f1c; }
.history-carousel__heading{ display: flex; justify-content: space-between; align-items: end; gap: 30px; margin-bottom: 27px; }
.history-carousel__eyebrow{ margin: 0 0 10px; color: #8b663f; font-size: 11px; font-weight: 700; letter-spacing: .18em; }
.history-carousel__heading h2{ max-width: 23ch; margin: 0; font: 500 clamp(32px, 3.5vw, 44px)/1.08 "DM Sans", Arial, sans-serif; letter-spacing: -.035em; }
.history-carousel__heading a{ flex: none; margin-bottom: 5px; color: #26211e; border-bottom: 1px solid currentColor; padding-bottom: 5px; text-decoration: none; text-transform: uppercase; font-size: 11px; font-weight: 700; letter-spacing: .06em; }
.history-carousel__track{ display: flex; gap: 20px; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scrollbar-width: none; }
.history-carousel__track::-webkit-scrollbar{ display: none; }
.history-card{ flex: 0 0 clamp(290px, 31vw, 360px); min-width: 0; scroll-snap-align: start; }
.history-card img{ display: block; width: 100%; aspect-ratio: 1.42; object-fit: cover; border-radius: 3px; }
.history-card__photo{ overflow: hidden; aspect-ratio: 1.42; border-radius: 3px; }
.history-card__photo img{ height: 100%; transform: translateY(3%) scale(1.25); }
.history-card > div:last-child{ position: relative; min-height: 135px; margin-top: 18px; padding: 25px 18px 0 0; }
.history-card > div:last-child::before{ content: ""; position: absolute; top: 3px; left: 0; width: calc(100% + 20px); height: 1px; background: #c9b9a4; }
.history-card > div:last-child::after{ content: ""; position: absolute; top: -1px; left: 0; width: 9px; height: 9px; border-radius: 50%; border: 1px solid #ad8251; background: #f5f0e9; }
.history-card.is-active > div:last-child::after{ background: #ad8251; box-shadow: 0 0 0 5px #f5f0e9; }
.history-card time{ display: block; margin-bottom: 8px; color: #8c643e; font: 600 25px/1.1 "DM Sans", Arial, sans-serif; letter-spacing: -.04em; }
.history-card p{ max-width: 34ch; margin: 0; font: 400 13px/1.5 "DM Sans", Arial, sans-serif; }
.history-carousel__controls{ display: flex; align-items: center; gap: 9px; margin-top: 20px; }
.history-carousel__controls button{ width: 40px; height: 40px; border: 1px solid #544a41; border-radius: 50%; background: transparent; color: #211f1c; font-size: 22px; cursor: pointer; }
.history-carousel__controls button:disabled{ opacity: .35; cursor: default; }
.history-carousel__controls span{ margin-left: 10px; color: #665c54; font-size: 12px; font-variant-numeric: tabular-nums; }
.voices{ padding: 52px 20px 58px; background: #201c1a; color: #f6f0e7; }
.voices__heading{ width: min(100%, 760px); margin: 0 auto 23px; }
.voices__heading p{ margin: 0 0 9px; color: #dfa95f; font-size: 10px; font-weight: 700; letter-spacing: .17em; }
.voices__heading h2{ max-width: 19ch; margin: 0; font: 400 clamp(33px, 3vw, 45px)/1.07 "Bodoni Moda", Georgia, serif; }
.voices__grid{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; width: min(100%, 650px); margin: 0 auto; }
.voices figure{ min-width: 0; margin: 0; }
.voices video{ display: block; width: 100%; aspect-ratio: 9 / 16; background: #111; object-fit: contain; }
.voices figcaption{ padding-top: 10px; font-size: 13px; }
#contato.contact--with-context{ padding-top: 42px !important; padding-bottom: 45px !important; background: linear-gradient(135deg, #26221e, #48382e); }
#contato .contact-context{ display: block; padding-bottom: 20px; }
#contato .contact-context__copy{ max-width: 760px; }
#contato .contact-context .contact-context__eyebrow{ margin: 0 0 9px; color: #e3b673; font-size: 10px; font-weight: 700; letter-spacing: .17em; }
#contato .contact-context h2{ max-width: 23ch; margin: 0 0 12px; font: 500 clamp(28px, 2.8vw, 38px)/1.04 "DM Sans", Arial, sans-serif; letter-spacing: -.035em; }
#contato .contact-context p{ max-width: 68ch; margin: 0 0 8px; font-size: 13px; line-height: 1.45; }
#contato .contact-context a{ margin-top: 5px; }
#contato .contact-context__details{ max-width: 760px; margin-top: 17px; border-top: 1px solid rgba(255,255,255,.24); }
#contato .contact-context__details summary{ display: flex; justify-content: space-between; padding: 11px 0; cursor: pointer; list-style: none; color: #f5ead9; font-size: 12px; font-weight: 700; }
#contato .contact-context__details summary::-webkit-details-marker{ display: none; }
#contato .contact-context__details[open] summary span{ transform: rotate(45deg); }
#contato .contact-context__steps{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
#contato .contact-context__steps li{ padding: 10px 0; }
#contato .contact-context__steps strong{ font: 500 13px/1.28 "DM Sans", Arial, sans-serif; }
#contato .contact-context__steps span{ font-size: 11px; line-height: 1.4; }
#contato.contact--with-context > h2{ margin: 18px 0 6px; font: 500 clamp(27px, 2.8vw, 37px)/1.05 "DM Sans", Arial, sans-serif; letter-spacing: -.035em; }
#contato.contact--with-context > p{ max-width: 60ch; font-size: 13px; line-height: 1.45; }
#contato.contact--with-context .contact-actions{ gap: 14px; margin: 15px 0 12px; }
#contato.contact--with-context .contact-actions .button{ min-height: 42px; padding: 11px 17px; font-size: 10px; }
#contato.contact--with-context address{ font-size: 12px; }
@media (max-width: 760px){.history-carousel{ padding: 42px 16px 38px; }
.history-carousel__heading{ display: block; margin-bottom: 20px; }
.history-carousel__heading h2{ max-width: 18ch; font-size: 32px; }
.history-carousel__heading a{ display: inline-block; margin-top: 14px; font-size: 10px; }
.history-card{ flex-basis: min(76vw, 320px); }
.history-card > div:last-child{ min-height: 142px; }
.voices{ padding: 37px 16px 42px; }
.voices__heading h2{ font-size: 31px; }
.voices__grid{ grid-template-columns: 1fr; gap: 24px; max-width: 390px; }
.voices figcaption{ font-size: 12px; line-height: 1.3; }
#contato.contact--with-context{ padding: 32px 20px 37px !important; }
#contato .contact-context{ padding-bottom: 13px; }
#contato .contact-context h2{ max-width: 21ch; font-size: 27px; }
#contato .contact-context p{ font-size: 12px; }
#contato .contact-context__steps{ grid-template-columns: 1fr; gap: 0; }
#contato .contact-context__steps li{ padding: 8px 0; }
#contato.contact--with-context > h2{ font-size: 27px; }
#contato.contact--with-context .contact-actions{ display: flex; gap: 6px 14px; }
#contato.contact--with-context .contact-actions .button{ flex: 0 0 calc(50% - 7px); width: calc(50% - 7px) !important; min-width: 0; min-height: 0; padding: 8px 0; border: 0; border-bottom: 1px solid currentColor; border-radius: 0; background: transparent; color: #f5ead9; font-size: 10px; }
#contato.contact--with-context .contact-actions .button.accent{ flex-basis: 100%; width: 100% !important; min-height: 42px; border: 0; background: #e8b467; color: #211f1c; }}
@media (prefers-reduced-motion: reduce){.history-carousel__track{ scroll-behavior: auto; }}