/* FS identity and portrait composition, October 2026. */
.header-inner{min-height:112px;height:auto;padding-block:20px;gap:32px}
.brand{gap:22px;flex-shrink:0}
.brand-mark{display:block;width:78px;height:70px;flex:none}
.brand-name{border-left:1px solid #cbd3d7;padding-left:23px;gap:4px}
.brand-name strong{font:700 21px/1.18 var(--serif);letter-spacing:-.025em;color:var(--navy)}
.brand-name small{font-size:9px;line-height:1.6;letter-spacing:.14em;margin-top:7px;color:#4d6470}
.navigation{gap:26px;font-size:12px}
.navigation a{white-space:nowrap}
.navigation .nav-contact{padding:14px 19px}
.menu-toggle{font-size:12px}

.hero-grid{grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:64px;padding-top:62px;padding-bottom:48px}
.hero-copy{min-width:0;padding-block:0}
.hero h1{font-size:clamp(52px,5.2vw,76px);line-height:1.06;margin:26px 0 28px}
.hero h1 em{white-space:nowrap}
.hero .eyebrow{font-size:10px;letter-spacing:.15em}
.hero-intro{font-size:15px;line-height:1.85;max-width:440px}
.hero-intro strong{display:block;font-size:18px;line-height:1.5;font-weight:600;color:var(--paper);margin-bottom:12px}
.hero-actions{margin-top:32px;gap:24px}
.hero .button{font-size:13px;padding:17px 22px;gap:28px}
.hero .text-link{font-size:12px}
.hero-assurance{font-size:10px;line-height:1.8;letter-spacing:.12em;margin-top:30px}

/* Contain the entire source photograph. No masks, overlays or side crops. */
.portrait-pair{gap:20px;align-self:center;width:100%;max-width:none}
.portrait-window{height:auto;aspect-ratio:13 / 20;background:#000;border:1px solid #355267;overflow:visible;position:relative}
.portrait-window img,.person.claudia img{display:block;position:absolute;inset:auto 0 0;top:auto;left:0;width:100%;max-width:100%;height:100%;object-fit:contain;object-position:center bottom}
/* Match the visible head-to-waist scale; Cláudia's source includes top space. */
.person.franco img{height:91.5%}
.person figcaption{margin:0;border:0;padding:22px 0 0}
.person h2{font:700 clamp(27px,2.5vw,35px)/1.15 var(--serif);letter-spacing:-.035em;color:#fff;white-space:normal}
.person figcaption p{font-size:10px;line-height:1.6;letter-spacing:.12em;color:#bdcdd7;margin-top:10px}
.hero-bottom{padding:25px 0;gap:24px;flex-wrap:wrap}
.hero-bottom p{font-size:10px;line-height:1.8;letter-spacing:.1em}
.hero-bottom .region-list{font-size:12px;line-height:1.8;letter-spacing:0}

.profile h3{font-weight:700;font-size:33px}
.profile .role{font-size:10px}
.profile-text,.service p,.steps p{font-size:14px}
.profile-contact{font-size:12px}
.contact-person h3{font-weight:700;font-size:25px}
.contact-person a{font-size:12px}
.contact-person .phone{font-size:17px}
.contact-person .whatsapp{font-size:11px}
.footer-brand{gap:23px}
.footer-brand .brand-mark{width:70px;height:63px}
.footer-brand p{font:700 25px/1.3 var(--serif);letter-spacing:-.02em}
.footer-brand small{font-size:9px;line-height:1.8;letter-spacing:.12em}
.footer-agency{font-size:11px}
.footer-bottom{font-size:10px}

@media(min-width:1500px){
  .hero-grid{padding-top:72px;padding-bottom:58px;gap:72px}
}
@media(max-width:1100px){
  .header-inner{min-height:100px;gap:24px}
  .brand{gap:16px}
  .brand-mark{width:65px;height:58px}
  .brand-name{padding-left:17px}
  .brand-name strong{font-size:19px}
  .brand-name small{font-size:8px}
  .navigation{gap:18px;font-size:11px}
  .navigation .region-nav{display:none}
  .hero-grid{gap:40px}
  .hero h1{font-size:clamp(46px,5.1vw,57px)}
  .hero .eyebrow{font-size:9px}
  .hero-intro{font-size:14px}
  .hero-intro strong{font-size:17px}
  .hero .button{font-size:12px;gap:20px}
  .hero .text-link{font-size:11px}
  .hero-actions{gap:22px}
  .portrait-pair{gap:16px}
  .person h2{font-size:27px}
  .person figcaption p{font-size:9px;letter-spacing:.08em}
  .hero-bottom span{margin-inline:8px}
}
@media(min-width:861px) and (max-width:1000px){
  .person h2 .surname{display:block}
}
@media(max-width:860px){
  .header-inner{min-height:98px;padding-block:17px}
  .brand-name strong{font-size:19px}
  .brand-name small{font-size:8px}
  .navigation{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:24px 6%;border-bottom:1px solid var(--line);flex-wrap:wrap;gap:24px}
  .navigation.open{display:flex}
  .navigation a{font-size:13px}
  .navigation .region-nav{display:block}
  .menu-toggle{display:block;padding:12px 15px}
  .hero-grid{grid-template-columns:1fr;gap:42px;padding-top:44px;padding-bottom:36px}
  .hero-copy{max-width:650px}
  .hero h1{font-size:clamp(54px,8vw,68px)}
  .hero-intro{max-width:580px;font-size:15px}
  .hero-intro strong{font-size:19px}
  .hero .eyebrow{font-size:10px}
  .hero-assurance{font-size:10px;margin-top:25px}
  .portrait-pair{max-width:680px;gap:24px;justify-self:center}
  .person h2{font-size:33px}
  .person figcaption p{font-size:10px}
  .hero-bottom{align-items:flex-start;gap:14px}
  .contact-person h3{font-size:26px}
  .contact-person a{font-size:12px}
  .contact-person .phone{font-size:17px}
}
@media(max-width:540px){
  .container{width:90%}
  .header-inner{min-height:96px;gap:12px;padding-block:16px}
  .brand{gap:12px}
  .brand-mark{width:56px;height:51px}
  .brand-name{padding-left:13px;gap:3px}
  .brand-name strong{font-size:17px;letter-spacing:-.03em}
  .brand-name small{font-size:7px;letter-spacing:.09em;margin-top:5px}
  .menu-toggle{font-size:11px;padding:10px}
  .hero-grid{padding-top:37px;gap:34px}
  .hero h1{font-size:clamp(45px,10.3vw,55px);margin:24px 0}
  .hero .eyebrow{font-size:9px;letter-spacing:.12em}
  .hero-intro{font-size:14px;line-height:1.85}
  .hero-intro strong{font-size:17px}
  .hero-actions{gap:23px;margin-top:27px}
  .hero .button{padding:16px 20px}
  .hero .text-link{font-size:12px}
  .hero-assurance{font-size:9px}
  .portrait-pair{gap:16px}
  .person figcaption{padding-top:17px}
  .person h2{font-size:clamp(25px,6.8vw,34px);line-height:1.08}
  .person h2 .surname{display:block}
  .person figcaption p{font-size:9px;letter-spacing:.04em;max-width:130px}
  .hero-bottom p{font-size:9px;letter-spacing:.06em}
  .hero-bottom .region-list{font-size:11px}
  .hero-bottom span{margin-inline:5px}
  .profile h3{font-size:30px}
  .consultant-contacts{gap:20px}
  .contact-person h3{font-size:24px}
  .contact-person .phone{font-size:15px}
  .contact-person a{font-size:11px}
  .contact-person .whatsapp{font-size:10px}
  .footer-brand{gap:17px;align-items:flex-start}
  .footer-brand .brand-mark{width:57px;height:51px}
  .footer-brand p{font-size:22px}
  .footer-brand .footer-second-name{display:block}
  .footer-brand small{font-size:8px;max-width:220px}
}
@media(max-width:359px){
  .header-inner{gap:8px}
  .brand{gap:9px}
  .brand-mark{width:46px;height:42px}
  .brand-name{padding-left:10px}
  .brand-name strong{font-size:15px}
  .brand-name small{font-size:6.5px}
  .menu-toggle{padding:9px;font-size:10px}
  .hero h1{font-size:43px}
  .hero .eyebrow{font-size:8px}
  .hero-intro strong{font-size:16px}
  .hero-actions{gap:20px}
  .hero .button{padding:15px 17px;gap:16px}
  .hero .text-link{font-size:11px}
  .portrait-pair{gap:13px}
  .person h2{font-size:25px}
  .person figcaption p{font-size:8px}
}
