:root{--ink:#102b38;--paper:#faf9f5;--accent:#d94930;--muted:#5b6c72}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #ed7357;outline-offset:5px}header{height:100px;background:var(--paper);display:flex;align-items:center;justify-content:space-between;padding:0 6%;position:sticky;top:0;z-index:10;border-bottom:1px solid #e4e5df}.brand img{width:130px;height:74px;object-fit:contain;display:block}nav{display:flex;gap:34px;font-size:14px;font-weight:600}nav a:hover{color:var(--accent)}nav span{color:var(--accent);margin-left:10px}.hero{height:min(780px,calc(100svh - 100px));min-height:570px;position:relative;color:white;background:#183541;overflow:hidden}.hero-image,.hero-shade{position:absolute;width:100%;height:100%;object-fit:cover;inset:0}.hero-shade{background:linear-gradient(90deg,rgba(4,23,33,.82),rgba(4,23,33,.15)),linear-gradient(0deg,rgba(4,23,33,.5),transparent 50%)}.hero-copy{position:relative;max-width:850px;padding:100px 7% 95px;box-sizing:content-box}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2.6px;margin:0 0 28px}.hero h1{font-size:clamp(40px,5.2vw,78px);font-weight:500;line-height:1.05;letter-spacing:-2.5px;margin:0 0 30px}.hero-copy>p:not(.eyebrow){max-width:440px;font-size:18px;color:#e5e9e9}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;background:var(--accent);color:#fff;padding:17px 23px;border:0;font:600 14px Arial;cursor:pointer;min-height:54px;margin-top:22px}.button:hover{background:#b93723}.hero-bottom{position:absolute;bottom:28px;left:7%;right:7%;display:flex;justify-content:space-between;font-size:11px;letter-spacing:1.8px}.section{padding:95px 7%;max-width:1600px;margin:auto}.section-top{display:grid;grid-template-columns:1fr 2fr;gap:50px;margin-bottom:50px}.section-top .eyebrow{padding-top:12px}.section h2{font-size:clamp(32px,4vw,55px);line-height:1.13;letter-spacing:-1.5px;font-weight:500;margin:0 0 32px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}p{margin:0 0 20px}.intro{font-size:23px;line-height:1.45}.two-col p:not(.intro){color:var(--muted)}figure{margin:0}figure img{display:block;width:100%;height:auto;object-fit:cover}figcaption{font-size:11px;color:var(--muted);margin-top:14px;letter-spacing:.7px}.service-list{margin-top:30px}.service-list div{display:flex;align-items:center;gap:22px;border-top:1px solid #cdd3d3;padding:17px 0}.service-list span{font-size:11px;color:var(--ink)}h3{font-size:17px;font-weight:500;margin:0}.about{background:#e9ece6;max-width:none}.about .two-col{max-width:1376px;margin:auto}.bio-grid{display:grid;grid-template-columns:1fr 1.6fr;gap:100px;align-items:start}.bio-grid>figure img{width:100%;height:auto;object-fit:contain;object-position:top}.timeline{margin:0;padding:0;list-style:none}.timeline li{display:grid;grid-template-columns:70px 1fr;gap:28px;border-top:1px solid #cdd3d3;padding:20px 0}.timeline>li>span{font-size:20px;color:var(--muted)}.timeline p{margin:0;color:var(--muted)}.contact{background:var(--ink);color:white;max-width:none;display:grid;grid-template-columns:1.1fr 1fr;gap:100px}.contact p{color:#c4d1d5;max-width:450px}.phone{display:inline-block;font-size:clamp(23px,3vw,35px);border-bottom:1px solid #637d88;margin-top:15px}label{display:block;font-size:13px;margin-bottom:8px}input,textarea{width:100%;background:transparent;color:white;border:1px solid #64808b;border-radius:0;padding:14px;font:16px Arial;margin-bottom:22px}input::placeholder,textarea::placeholder{color:#adbdc4}textarea{resize:vertical}.contact .button{margin-top:0;width:100%}.form-note{font-size:12px;margin-top:17px}footer{padding:32px 7%;display:flex;justify-content:space-between;gap:25px;align-items:center;font-size:11px}footer>a:first-child{font-size:17px;font-weight:800;letter-spacing:2px}.skip{position:absolute;left:10px;top:-100px;z-index:20;background:white;padding:12px}.skip:focus{top:10px}@media(max-width:760px){header{height:auto;min-height:85px;padding:8px 5%;gap:10px}.brand img{width:95px;height:54px}nav{gap:12px;font-size:11px;flex-wrap:wrap;justify-content:flex-end;max-width:225px}nav span{margin:0}.hero{height:680px;min-height:540px;max-height:calc(100svh - 85px)}.hero-copy{padding:85px 6% 65px}.hero h1{letter-spacing:-1.5px;font-size:44px}.hero-copy>p:not(.eyebrow){font-size:16px}.hero-bottom{font-size:9px;letter-spacing:.6px;left:6%;right:6%;gap:12px}.eyebrow{font-size:10px;letter-spacing:1.6px}.section{padding:65px 6%}.section-top,.two-col,.bio-grid,.contact{grid-template-columns:1fr;gap:32px}.section-top{margin-bottom:25px;gap:0}.section h2{font-size:37px}.intro{font-size:21px}.about figure{order:2}.bio-grid>figure img{max-width:100%;height:auto}.timeline li{gap:12px}.contact{gap:40px}footer{padding:30px 6%;flex-wrap:wrap}footer span{order:3;width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.contact-options{display:grid;align-content:start;gap:0;min-width:0}.contact-option{display:block;padding:22px 0;border-bottom:1px solid #637d88;overflow-wrap:anywhere}.contact-option:first-child{padding-top:0}.contact-option strong{display:flex;justify-content:space-between;gap:20px;font-size:20px;font-weight:500}.contact-option>span{display:block;margin-top:7px;color:#c4d1d5;font-size:16px}.contact-option:hover strong{color:#ff947c}

.bio-intro{max-width:760px;margin:0 0 40px;color:var(--muted)}

.about .two-col{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(36px,5vw,72px);align-items:start}.about .two-col>div{min-width:0}.about .intro{font-size:20px;line-height:1.6}.about .two-col p:not(.eyebrow):not(.intro){font-size:17px;line-height:1.7}.about h2{text-wrap:balance}.about .two-col p:last-child{margin-bottom:0}@media(max-width:760px){.about .two-col{grid-template-columns:1fr;gap:32px}.about .intro{font-size:19px}.about .two-col p:not(.eyebrow):not(.intro){font-size:16px}}

@media(min-width:761px) and (max-width:980px){.about .two-col{grid-template-columns:1fr;gap:40px}.about .two-col>div{max-width:680px;margin-inline:auto}.about figure{order:2;width:100%;max-width:520px;margin-inline:auto}}

/* Alinhamento dos textos corridos em todas as seções. */
figcaption{text-align:left}
/* Justificação nativa apenas para parágrafos de texto corrido.
   pt-BR é herdado de <html>; última linha e parágrafos de uma linha ficam à esquerda. */
.hero-copy>p:not(.eyebrow),.two-col p:not(.eyebrow),.bio-intro,.timeline p,.contact p:not(.eyebrow){
 text-align:justify;
 text-align-last:left;
 text-justify:inter-word;
 text-wrap:pretty;
 word-spacing:normal;
 word-break:normal;
 overflow-wrap:normal;
 -webkit-hyphens:auto;
 hyphens:auto;
 -webkit-hyphenate-limit-before:2;
 -webkit-hyphenate-limit-after:2;
 -webkit-hyphenate-limit-lines:2;
 hyphenate-limit-chars:5 2 2;
 hyphenate-limit-lines:2;
}

.keep-word{color:inherit;white-space:nowrap;-webkit-hyphens:none;hyphens:none;overflow-wrap:normal;word-break:normal}

.menu-toggle{display:none}
@media(max-width:760px){
 header{height:80px;min-height:80px;padding:10px 6%;gap:20px}
 .brand img{width:105px;height:60px}
 .menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:44px;padding:10px 12px;background:transparent;border:1px solid #cdd3d3;border-radius:4px;color:var(--ink);font:600 14px Arial,Helvetica,sans-serif;cursor:pointer}
 header nav{display:none;position:absolute;top:100%;left:0;right:0;width:100%;max-width:none;padding:12px 6% 20px;background:var(--paper);border-bottom:1px solid #cdd3d3;box-shadow:0 12px 20px rgba(16,43,56,.08);flex-direction:column;flex-wrap:nowrap;gap:0;align-items:stretch;font-size:16px}
 header nav.is-open{display:flex}
 header nav a{display:block;padding:14px 0;min-height:48px;border-bottom:1px solid #e4e5df}
 header nav a:last-child{border-bottom:0}
 header nav span{display:none}
}

@media(max-width:760px){header{height:88px;min-height:88px;padding:8px 6%}.brand img{width:135px;height:72px}.menu-toggle{gap:8px;padding:8px 4px;border:0;border-radius:0;font-size:12px}.menu-toggle svg{width:20px;height:20px}}

/* Distribui o título da trajetória sem quebras fixas. */
.bio .section-top h2{text-wrap:balance}
@media(max-width:760px){.bio .section-top h2{font-size:clamp(30px,8vw,37px);line-height:1.15}}
