:root{--paper:#f2efe8;--ink:#27211b;--brown:#201710;--line:#cfc8bd}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,sans-serif;font-size:16px;line-height:1.7}a{color:inherit}button,input,select,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #947344;outline-offset:5px}.header{height:108px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 6%;gap:25px}.header a{text-decoration:none}.header nav{display:flex;justify-content:flex-end;gap:35px}.header nav a,.menu-services{font-size:12px;text-transform:uppercase;letter-spacing:1.7px}.brand img{width:255px;display:block}.hero{height:690px;position:relative;overflow:hidden;background:#5c4738}.hero-photo{width:100%;height:100%;object-fit:cover;object-position:center 35%;display:block}.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,#150d060a 10%,#150d0614 30%,#150d0685 78%,#150d0640)}.hero-content{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding:0 24px 90px;gap:30px}.hero h1{margin:0;width:min(740px,74vw);line-height:1}.hero h1 img{display:block;width:100%;filter:drop-shadow(0 2px 8px #24170d55)}.button{display:inline-block;border:1px solid var(--ink);padding:15px 26px;background:var(--ink);color:#fff;text-decoration:none;font-size:13px;letter-spacing:.65px;cursor:pointer}.button:hover{background:#493c2e}.button.gold{background:#d2bd96;color:#211a13;border-color:#d2bd96;text-transform:uppercase;font-size:12px;letter-spacing:1.4px}.section{max-width:1240px;margin:auto;padding:90px 60px}h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.15}h2{font-size:48px;margin:12px 0 30px;letter-spacing:-1.4px}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:2.2px;margin:0;color:#78664e}.services{text-align:center;padding-top:70px;padding-bottom:65px}.services h2{font-size:39px;text-transform:uppercase;letter-spacing:-1px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:62px;margin-top:50px}.services svg{width:45px;height:45px}.services h3{font-family:Arial,sans-serif;text-transform:uppercase;font-size:15px;letter-spacing:.6px;margin:19px 0 13px}.services p:not(.eyebrow){font-size:14px;line-height:1.65}.services article a{font-size:12px;text-underline-offset:6px}.services article a span{margin-left:9px}.unsure{display:inline-block;margin-top:45px;font-size:14px;text-underline-offset:7px}.other{color:#70685e;margin:25px 0 0}.statement{text-align:center;background:var(--brown);color:var(--paper);padding:76px 24px 80px}.statement .eyebrow{color:#c5b08b}.statement h2{font-size:62px;margin:25px 0}.statement>p:last-child{font-size:16px;color:#d6cfc4}.about,.contact{display:grid;grid-template-columns:.85fr 1fr;gap:90px;align-items:center}.portrait{width:100%;height:565px;object-fit:cover;object-position:center 35%;border:1px solid #c7bbaa;padding:5px}.about h2{font-size:43px}.about p:not(.eyebrow){font-size:16px;color:#575149}.text-link{font-size:14px;text-underline-offset:6px;display:inline-block;margin-top:15px}.contact{background:white;max-width:none;padding-left:max(60px,calc((100vw - 1120px)/2));padding-right:max(60px,calc((100vw - 1120px)/2))}.contact h2{font-size:54px}.contact .portrait{height:640px;object-position:center 28%}.contact label{display:block;font-size:14px;margin:13px 0 5px}.contact label span{color:#81766c}.contact input,.contact select,.contact textarea{display:block;width:100%;border:1px solid var(--line);border-radius:0;background:#fff;padding:10px 12px;font-size:16px;color:var(--ink);min-height:45px}.contact textarea{resize:vertical}.actions{display:flex;align-items:center;gap:20px;margin-top:22px}.email-button{background:none;border:0;text-decoration:underline;text-underline-offset:5px;font-size:12px;cursor:pointer;padding:8px 0}.form-note{font-size:12px;color:#786e61;min-height:22px}.phone{display:inline-block;font-size:14px;text-underline-offset:5px;margin-top:8px}footer{text-align:center;background:var(--brown);color:var(--paper);padding:55px 24px}footer img{width:290px;max-width:90%;display:block;margin:0 auto 22px}footer p{font-size:12px;color:#b2a698;margin:10px}footer a{font-size:13px;text-decoration:none}footer small{display:block;font-size:11px;color:#ad9e8d;margin-top:28px}@media(min-width:1700px){.hero{height:780px}}@media(max-width:900px){.header{padding:0 25px;height:92px}.brand img{width:210px}.header nav{gap:15px}.header nav a,.menu-services{font-size:10px;letter-spacing:.8px}.hero{height:640px}.hero-photo{object-position:center 32%}.section{padding:65px 30px}.services-grid{gap:25px}.about,.contact{gap:35px}.about h2{font-size:34px}.portrait{height:520px}.actions{flex-direction:column;align-items:flex-start;gap:6px}}@media(max-width:600px){.header{height:90px;padding:14px 20px;grid-template-columns:1fr auto;gap:12px}.brand{grid-column:1;grid-row:1}.brand img{width:180px}.menu-services{grid-column:2;grid-row:1;font-size:12px}.header nav{display:none}.hero{height:610px}.hero-photo{object-position:50% 24%}.hero-shade{background:linear-gradient(180deg,transparent 25%,#20171022 42%,#2017109c 100%)}.hero-content{padding-bottom:68px;gap:28px}.hero h1{width:94%;max-width:410px}.services-grid{grid-template-columns:1fr;gap:40px;max-width:300px;margin:35px auto 0}.section{padding:60px 25px}.services h2{font-size:33px}.services p:not(.eyebrow){font-size:15px}.other{line-height:2!important}.statement{padding:60px 25px}.statement h2{font-size:48px}.about,.contact{grid-template-columns:1fr;gap:32px}.portrait{height:430px;max-width:370px;justify-self:center}.about h2{font-size:36px}.contact .portrait{height:420px}.contact h2{font-size:43px}.actions .button{width:100%;text-align:center}.actions{gap:12px}.form-note{font-size:13px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Revisão: marca CM, navegação adaptável e chamadas com contraste. */
.header{position:relative;z-index:10}
.header .brand img{width:80px;height:72px;object-fit:contain}
.header .mobile-about,.menu-toggle{display:none}
.header .nav-contact{background:#f2efe8;color:rgb(32,23,16);padding:0;width:75px;height:20px;line-height:20px}
.header nav{align-items:center}
.hero-photo{object-position:50% 20%}
.services article .contact-link{font-size:13px;text-decoration:none;color:#fff}
.services .other{margin-top:38px}
.services .unsure{margin-top:22px;color:#fff;text-decoration:none;font-size:14px}
footer .phone{display:block;width:fit-content;margin:18px auto 0;color:#fff}
@media(max-width:700px){
 .header{height:90px;grid-template-columns:1fr auto;padding:10px 24px;gap:0}
 .header .brand{grid-column:1;grid-row:1;justify-self:start}
 .header .brand img{width:66px;height:65px}
 .header>.menu-services{display:none}
 .header .menu-toggle{display:flex;grid-column:2;grid-row:1;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:48px;height:48px;background:rgb(32,23,16);color:#fff;border:0;cursor:pointer}
 .menu-toggle span{display:block;width:23px;height:2px;background:currentColor}
 .header nav{display:none;position:absolute;left:0;right:0;top:100%;background:rgb(32,23,16);padding:20px 24px;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 8px 12px #0002}
 .header nav.is-open{display:flex}
 .header nav a,.header .mobile-about{display:block;color:#fff;padding:14px 10px;font-size:14px;letter-spacing:1px}
 .header nav a:hover{background:#ffffff12}
 .header .nav-contact{background:transparent;color:#fff;padding:14px 10px;width:auto;height:auto;line-height:1.7;border-top:1px solid #ffffff30}
 .hero-photo{object-position:50% 20%}
}

/* Serviços: cartões editoriais com os ícones originais. */
.services.section{max-width:none;background:#fff;text-align:left;padding:85px 60px}
.services-inner{max-width:1120px;margin:0 auto}
.services h2{font-size:48px;text-transform:none;letter-spacing:-1.4px;margin:22px 0 24px}
.services .services-intro{font-size:16px;color:#68635b;margin:0}
.services .services-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:28px 0 0;max-width:none}
.services-grid article{background:var(--paper);padding:28px;display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.services article svg{width:38px;height:38px;color:#90703c;margin-bottom:22px}
.services article h3{font-family:Georgia,'Times New Roman',serif;font-size:29px;text-transform:none;letter-spacing:-.5px;line-height:1.15;margin:0 0 20px}
.services article p{font-size:16px;color:#68635b;margin:0 0 20px}
.services article .contact-link{font-size:14px;line-height:1.5;color:var(--ink);text-decoration:none;margin-top:auto;padding:10px 0;min-height:44px}
.services article .contact-link:hover{text-decoration:underline;text-underline-offset:5px}
.service-guidance{background:#26231f;color:var(--paper);display:flex;justify-content:space-between;align-items:center;gap:30px;padding:24px;margin-top:26px}
.services .service-guidance h3{font-family:Georgia,'Times New Roman',serif;text-transform:none;letter-spacing:0;font-size:25px;margin:0 0 5px}
.services .service-guidance p{font-size:14px;margin:0;color:var(--paper)}
.services .service-guidance .unsure{margin:0;flex-shrink:0;background:var(--paper);color:#26231f;border:1px solid var(--paper);font-size:14px;letter-spacing:0;padding:12px 22px}
.services .service-guidance .unsure:hover{background:#dfd7ca}
.additional-services{margin-top:28px}
.services .additional-services .other{margin:24px 0 0;font-size:14px;line-height:1.9}
@media(max-width:900px){.services.section{padding:65px 30px}.services-grid article{padding:22px}.services article h3{font-size:25px}}
@media(max-width:700px){.services.section{padding:55px 25px}.services h2{font-size:36px}.services .services-grid{grid-template-columns:1fr;gap:18px}.services-grid article{padding:28px}.services article h3{font-size:29px}.service-guidance{flex-direction:column;align-items:flex-start;gap:20px}.services .service-guidance .unsure{width:100%;text-align:center}}

/* Destaque independente em cada serviço, sem alterar as quebras do texto. */
.services .additional-services .other{color:#625a50}
.other-service{
 display:inline-block;
 text-shadow:0 0 0 currentColor,0 0 0 currentColor;
 transition:color 220ms ease,text-shadow 220ms ease;
}
@media(hover:hover){
 .other-service:hover{
  color:var(--brown);
  text-shadow:.4px 0 0 currentColor,-.4px 0 0 currentColor;
 }
}
@media(prefers-reduced-motion:reduce){
 .other-service{transition:none}
}
/* Imagens específicas para mobile, no mesmo breakpoint do menu. */
.header .brand picture{display:block}
.hero-picture{display:block;width:100%;height:100%}
@media(max-width:700px){
 .header{column-gap:16px}
 .header .brand{min-width:0;max-width:100%}
 .header .brand img{width:240px;max-width:100%;height:auto}
 .hero-picture .hero-photo{object-position:50% 28%}
}

/* Passo a passo e dúvidas — referência aprovada. */
.content-width{width:100%;max-width:1120px;margin:0 auto}
.first-steps{padding:80px 60px;background:#26231f;color:var(--paper)}
.first-steps .eyebrow{color:#d1b47e}
.first-steps h2{font-size:46px;margin:28px 0 42px}
.steps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:64px}
.step-number{font-family:Georgia,serif;font-size:23px;color:#d1b47e}
.steps-grid h3{font-size:25px;margin:15px 0}
.steps-grid p{font-size:15px;color:#d7d1c7;line-height:1.65;margin:0}
.faq-section{padding:80px 60px;background:#fff}
.faq-layout{display:grid;grid-template-columns:.85fr 1.5fr;gap:80px}
.faq-section h2{font-size:42px;margin:25px 0}
.faq-intro{font-size:15px;color:#68635b;max-width:310px}
.faq-intro a{text-underline-offset:4px}
.faq-list details{border-bottom:1px solid #e1dbd1;padding:20px 0}
.faq-list details:first-child{padding-top:0}
.faq-list summary{position:relative;list-style:none;cursor:pointer;font-size:16px;padding-right:30px}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:'+';position:absolute;right:4px;top:0}
.faq-list details[open] summary::after{content:'−'}
.faq-list p{color:#68635b;font-size:14px;margin:14px 0 0}
.faq-list summary:focus-visible{outline:2px solid #947344;outline-offset:5px}
/* Contact et footer */
.contact.section{background:#fff;grid-template-columns:1.1fr .85fr;align-items:start;gap:80px}
.contact .contact-profile .portrait{height:auto;aspect-ratio:500/515;object-fit:cover;object-position:center 43%;border:1px solid #c7bbaa;padding:5px;display:block;max-width:none}
.contact-profile h3{font-size:30px;line-height:1.2;margin:22px 0}
.contact-profile>a{display:block;font-size:13px;color:#68635b;text-decoration:none;overflow-wrap:anywhere}
.contact-profile>a:hover{text-decoration:underline}
.contact-form-column{min-width:0}
.contact h2{font-size:48px;margin:22px 0}
.contact-intro{color:#68635b;font-size:16px;margin:0 0 20px}
.contact label{margin-top:20px}
.contact .actions{gap:14px;flex-wrap:wrap}
.contact .email-button{border:1px solid var(--ink);padding:15px 20px;text-decoration:none;font-size:13px;min-height:48px}
.contact .email-button:hover{background:#e5ded2}
.site-footer{padding:55px 60px;text-align:left;background:#26231f}
.footer-layout{display:grid;grid-template-columns:1.1fr .8fr;gap:80px}
.site-footer .footer-name{font-family:Georgia,serif;font-size:29px;color:var(--paper);margin:0 0 12px}
.site-footer p{margin:0;color:#d7d1c7;font-size:13px}
.footer-contacts>a,.site-footer .phone{display:flex;align-items:center;gap:10px;width:auto;margin:0 0 12px;font-size:14px;color:var(--paper)}
.site-footer small{margin-top:15px;color:#b8ad9f}
@media(max-width:900px){
 .first-steps,.faq-section{padding:65px 30px}
 .steps-grid{gap:30px}
 .faq-layout{gap:35px}
 .faq-section h2{font-size:34px}
 .contact.section{gap:35px}
 .contact h2{font-size:40px}
 .contact .actions{align-items:flex-start}
 .site-footer{padding:45px 30px}
}
@media(max-width:700px){
 .first-steps,.faq-section{padding:55px 25px}
 .first-steps h2{font-size:36px}
 .steps-grid,.faq-layout{grid-template-columns:1fr;gap:35px}
 .faq-intro{max-width:none}
 .faq-section h2 br{display:none}
 .contact.section{grid-template-columns:1fr;padding:55px 25px;gap:40px}
 .contact-profile{max-width:450px;width:100%;justify-self:center}
 .contact-profile h3{font-size:28px}
 .contact .actions{align-items:stretch}
 .contact .email-button{width:100%}
 .site-footer{padding:45px 25px}
 .footer-layout{grid-template-columns:1fr;gap:30px}
}

.footer-contacts .social-icon{width:20px;height:20px;flex:0 0 20px}

.site-footer .footer-logo{display:block;width:288px;max-width:80%;height:auto;margin:0 0 20px}

.additional-services .eyebrow {
  font-size: clamp(15px, 1.5vw, 18px);
  font-weight: 600;
  letter-spacing: .08em;
  margin-bottom: 10px;
}

.services .additional-services .other {
  margin-top: 0;
  font-size: clamp(17px, 1.8vw, 21px);
  line-height: 1.65;
  font-weight: 500;
  color: var(--ink);
}

.site-footer .footer-logo + p {
  font-size: 11px;
}
@media (max-width: 700px) {
  .site-footer { text-align: center; }
  .site-footer .footer-logo { margin-inline: auto; }
  .footer-contacts > a { justify-content: center; }
}

@keyframes entrada-da-marca {
  from { opacity: .6; }
  to { opacity: 1; }
}

@media screen and (prefers-reduced-motion: no-preference) {
  .hero-content img { animation: entrada-da-marca 500ms ease-out; }
}

@media screen and (min-width: 701px) and (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .services-grid article { transition: transform 180ms ease-out; }
  .services-grid article:hover,
  .services-grid article:focus-within { transform: translateY(-3px); }
}
.voltar-topo {
  position: fixed;
  right: max(16px, env(safe-area-inset-right));
  bottom: max(16px, env(safe-area-inset-bottom));
  z-index: 10;
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #201710;
  color: #fff;
  border: 1px solid #d1b47e;
}
.voltar-topo[hidden] { display: none; }
.voltar-topo:focus-visible { outline: 3px solid #a6782d; outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
