.elementor-31 .elementor-element.elementor-element-cfa596d{--display:flex;--min-height:412px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overlay-opacity:0.5;--border-radius:30px 30px 30px 30px;}.elementor-31 .elementor-element.elementor-element-cfa596d:not(.elementor-motion-effects-element-type-background), .elementor-31 .elementor-element.elementor-element-cfa596d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFCB00;}.elementor-31 .elementor-element.elementor-element-cfa596d::before, .elementor-31 .elementor-element.elementor-element-cfa596d > .elementor-background-video-container::before, .elementor-31 .elementor-element.elementor-element-cfa596d > .e-con-inner > .elementor-background-video-container::before, .elementor-31 .elementor-element.elementor-element-cfa596d > .elementor-background-slideshow::before, .elementor-31 .elementor-element.elementor-element-cfa596d > .e-con-inner > .elementor-background-slideshow::before, .elementor-31 .elementor-element.elementor-element-cfa596d > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), inter;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-31 .elementor-element.elementor-element-16b781a{margin:20px 20px calc(var(--kit-widget-spacing, 0px) + 20px) 20px;padding:20px 20px 20px 20px;text-align:center;}.elementor-31 .elementor-element.elementor-element-16b781a .elementor-heading-title{font-family:"Petrona", inter;font-size:64px;font-weight:800;color:#000000;}.elementor-31 .elementor-element.elementor-element-a349af2{padding:20px 20px 20px 20px;text-align:center;}.elementor-31 .elementor-element.elementor-element-a349af2 .elementor-heading-title{font-family:"Plus Jakarta Sans", inter;font-size:24px;font-weight:400;line-height:32px;color:#000000;}.elementor-31 .elementor-element.elementor-element-ca9320a{padding:20px 20px 20px 20px;text-align:center;}.elementor-31 .elementor-element.elementor-element-ca9320a .elementor-heading-title{font-family:"Plus Jakarta Sans", inter;font-size:24px;font-weight:400;line-height:32px;color:#000000;}.elementor-31 .elementor-element.elementor-element-10edee4{--display:flex;--justify-content:space-between;}.elementor-31 .elementor-element.elementor-element-6eb443c{padding:20px 20px 20px 20px;text-align:center;}.elementor-31 .elementor-element.elementor-element-6eb443c .elementor-heading-title{font-family:"Figtree", inter;font-size:36px;font-weight:400;color:#000000;}.elementor-31 .elementor-element.elementor-element-a0393a8{padding:20px 20px 20px 20px;text-align:center;}.elementor-31 .elementor-element.elementor-element-a0393a8 .elementor-heading-title{font-family:"Figtree", inter;font-size:36px;font-weight:400;color:#000000;}.elementor-31 .elementor-element.elementor-element-05cbbbb{--display:flex;--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}.elementor-31 .elementor-element.elementor-element-b4229f4{text-align:center;}.elementor-31 .elementor-element.elementor-element-b4229f4 .elementor-heading-title{font-family:"Petrona", inter;font-size:64px;font-weight:800;color:#000000;}.elementor-31 .elementor-element.elementor-element-0f8beed{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-31 .elementor-element.elementor-element-2d8e285{--display:flex;--min-height:690px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), inter;font-weight:var( --e-global-typography-text-font-weight );}.elementor-31 .elementor-element.elementor-element-debd3de{--display:flex;}.elementor-31 .elementor-element.elementor-element-6492c5c{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-31 .elementor-element.elementor-element-1661836{--display:flex;--min-height:690px;}.elementor-31 .elementor-element.elementor-element-375cec6{--display:flex;}.elementor-31 .elementor-element.elementor-element-f89fb9c{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-31 .elementor-element.elementor-element-d2e82d1{--display:flex;}.elementor-31 .elementor-element.elementor-element-6f5c13f{--display:flex;--justify-content:space-between;}.elementor-31 .elementor-element.elementor-element-4ab2738{--display:flex;}.elementor-31 .elementor-element.elementor-element-878e993 .elementor-heading-title{font-family:"Figtree", inter;font-size:48px;font-weight:700;color:#000000;}.elementor-31 .elementor-element.elementor-element-c20582b{--display:flex;}.elementor-31 .elementor-element.elementor-element-8e0cd68 .elementor-heading-title{font-family:"Figtree", inter;font-size:36px;font-weight:400;color:#000000;}.elementor-31 .elementor-element.elementor-element-9df6a85{--display:flex;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), inter;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-31 .elementor-element.elementor-element-984318d .elementor-button{background-color:#000200;font-family:"Figtree", inter;font-size:24px;font-weight:500;border-radius:10px 10px 10px 10px;}.elementor-31 .elementor-element.elementor-element-5c904ad{--display:flex;--padding-top:50px;--padding-bottom:50px;--padding-left:50px;--padding-right:50px;}.elementor-31 .elementor-element.elementor-element-0c7b45a{text-align:center;}.elementor-31 .elementor-element.elementor-element-0c7b45a .elementor-heading-title{font-family:"Figtree", inter;font-size:28px;font-weight:400;color:#000000;}.elementor-31 .elementor-element.elementor-element-7e43230{text-align:center;}.elementor-31 .elementor-element.elementor-element-7e43230 .elementor-heading-title{font-family:"Petrona", inter;font-size:64px;font-weight:800;color:#000000;}.elementor-31 .elementor-element.elementor-element-5b45e05{text-align:center;}.elementor-31 .elementor-element.elementor-element-5b45e05 .elementor-heading-title{font-family:"Figtree", inter;font-size:36px;font-weight:400;color:#000000;}.elementor-31 .elementor-element.elementor-element-0924efa{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:50px;--padding-bottom:50px;--padding-left:50px;--padding-right:50px;}.elementor-31 .elementor-element.elementor-element-554ee07{--display:flex;--min-height:637px;--border-radius:20px 20px 20px 20px;}.elementor-31 .elementor-element.elementor-element-554ee07:not(.elementor-motion-effects-element-type-background), .elementor-31 .elementor-element.elementor-element-554ee07 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#EF8224;}.elementor-31 .elementor-element.elementor-element-64198f6{--display:flex;--border-radius:20px 20px 20px 20px;}.elementor-31 .elementor-element.elementor-element-64198f6:not(.elementor-motion-effects-element-type-background), .elementor-31 .elementor-element.elementor-element-64198f6 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0097F2;}.elementor-31 .elementor-element.elementor-element-ae4ba3b{--display:flex;--justify-content:space-between;--padding-top:50px;--padding-bottom:50px;--padding-left:50px;--padding-right:50px;}.elementor-31 .elementor-element.elementor-element-31e3964{padding:20px 20px 20px 20px;text-align:center;}.elementor-31 .elementor-element.elementor-element-31e3964 .elementor-heading-title{font-family:"Petrona", inter;font-size:64px;font-weight:800;color:#000000;}.elementor-31 .elementor-element.elementor-element-27fd923{padding:20px 20px 20px 20px;text-align:center;}.elementor-31 .elementor-element.elementor-element-27fd923 .elementor-heading-title{font-family:"Figtree", inter;font-size:36px;font-weight:400;color:#000000;}.elementor-31 .elementor-element.elementor-element-aba824f .elementor-button{background-color:#000000;font-family:"Figtree", inter;font-size:24px;font-weight:500;border-radius:10px 10px 10px 10px;}.elementor-31 .elementor-element.elementor-element-aba824f{padding:30px 30px 30px 30px;}.elementor-31 .elementor-element.elementor-element-aba824f.elementor-element{--align-self:center;}@media(min-width:768px){.elementor-31 .elementor-element.elementor-element-d2e82d1{--width:45%;}.elementor-31 .elementor-element.elementor-element-6f5c13f{--width:55%;}}/* Start custom CSS *//* Página Approach (31), Figma "How We Work Desktop" 939:15243 e "How We Work Mobile" 854:21133. 17/10/2026 */
body.elementor-page-31 .elementor-31 .e-con { --padding-top:0px; --padding-right:0px; --padding-bottom:0px; --padding-left:0px; --gap:0px; --row-gap:0px; --column-gap:0px; }
body.elementor-page-31 .elementor-31 .elementor-widget:not(:last-child) { margin-bottom: 0; }
body.elementor-page-31 .elementor-31 p { margin: 0; }
body.elementor-page-31 .elementor-31 .ap-mob { display: none; }
body.elementor-page-31 .elementor-31 .ap-sr, body.elementor-page-31 .elementor-31 .ap-card__desc { position: absolute !important; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }

/* botões: padding, altura, entrelinha e raio vêm do Kit 7 */
body.elementor-page-31 .elementor-31 .ap-btn { width: auto !important; }
body.elementor-page-31 .elementor-31 .ap-btn .elementor-button { font-family: Figtree, sans-serif !important; font-size: 24px !important; font-weight: 500 !important; border: 0 !important; background: #000000 !important; color: #FFFFFF !important; }
body.elementor-page-31 .elementor-31 .ap-btn .elementor-button:hover, body.elementor-page-31 .elementor-31 .ap-btn .elementor-button:focus-visible { background: #333333 !important; }
body.elementor-page-31 .elementor-31 .ap-btn .elementor-button:focus-visible { outline: 3px solid #4368F5; outline-offset: 3px; }

/* 1. Hero: no Figma o menu (161) fica sobre a foto; aqui o header vem antes, então a seção tem 975 - 162 */
body.elementor-page-31 .elementor-31 .ap-hero { min-height: 813px; padding-top: 401px !important; justify-content: flex-end; background: #F9F8F0 url(/wp-content/uploads/2026/10/approach-hero-hd.webp) center bottom / cover no-repeat; }
body.elementor-page-31 .elementor-31 .ap-hero__card { min-height: 412px; padding: 60px 80px !important; gap: 20px !important; justify-content: center; align-items: center; background: #FFCB00; border-radius: 50px; text-align: center; }
body.elementor-page-31 .elementor-31 .ap-hero__title .elementor-heading-title { font-family: Petrona, serif !important; font-weight: 800 !important; font-size: 64px !important; line-height: 72px !important; color: #000000 !important; margin: 0; }
body.elementor-page-31 .elementor-31 .ap-traco { background: url(/wp-content/uploads/2026/10/approach-sublinhado.svg) left bottom / 100% 9px no-repeat; padding-bottom: 4px; }
body.elementor-page-31 .elementor-31 .ap-hero__text { width: 100%; max-width: 1060px !important; margin: 0 auto; }
body.elementor-page-31 .elementor-31 .ap-hero__text p + p { margin-top: 32px; }
body.elementor-page-31 .elementor-31 .ap-hero__text, body.elementor-page-31 .elementor-31 .ap-hero__text p { font-family: "Plus Jakarta Sans", sans-serif !important; font-size: 24px !important; line-height: 32px !important; color: #000000 !important; }
body.elementor-page-31 .elementor-31 .ap-hero__text strong { font-weight: 700; }

/* 2. Overview e "How we get there" */
body.elementor-page-31 .elementor-31 .ap-ov { background: #F9F8F0 url(/wp-content/uploads/2026/10/approach-grafismo-overview.svg) center top / 1440px auto no-repeat; padding: 80px 20px 160px !important; gap: 40px !important; align-items: center; }
body.elementor-page-31 .elementor-31 .ap-ov__top { max-width: 1152px; gap: 80px !important; text-align: center; }
body.elementor-page-31 .elementor-31 .ap-ov__text, body.elementor-page-31 .elementor-31 .ap-ov__text p { font-family: Figtree, sans-serif !important; font-size: 36px !important; line-height: 43px !important; color: #000000 !important; }
body.elementor-page-31 .elementor-31 .ap-ov__text p + p { margin-top: 43px; }
body.elementor-page-31 .elementor-31 .ap-ov__text strong { font-weight: 700; }
body.elementor-page-31 .elementor-31 .ap-ov__title .elementor-heading-title, body.elementor-page-31 .elementor-31 .ap-fa__title .elementor-heading-title, body.elementor-page-31 .elementor-31 .ap-toc__title .elementor-heading-title { font-family: Petrona, serif !important; font-weight: 800 !important; font-size: 64px !important; line-height: 72px !important; color: #000000 !important; margin: 0; text-align: center; }

body.elementor-page-31 .elementor-31 .ap-cards { display: grid !important; grid-template-columns: repeat(2, minmax(0, 531px)); gap: 40px !important; justify-content: center; width: 100%; }
body.elementor-page-31 .elementor-31 .ap-card { position: relative; aspect-ratio: 531 / 690; border-radius: 20px; overflow: hidden; padding: 30px; display: flex; flex-direction: column; justify-content: flex-end; color: #FFFFFF; outline: none; }
body.elementor-page-31 .elementor-31 .ap-card__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
body.elementor-page-31 .elementor-31 .ap-card::after { content: ""; position: absolute; inset: 0; background: rgba(0,0,0,.64); opacity: 0; transition: opacity .2s; }
body.elementor-page-31 .elementor-31 .ap-card__box { position: relative; z-index: 1; background: rgba(0,0,0,.5); border-radius: 20px; padding: 30px; text-align: center; }
body.elementor-page-31 .elementor-31 .ap-card__label { font-family: Figtree, sans-serif !important; font-weight: 400 !important; font-size: 36px !important; line-height: 43px !important; color: #FFFFFF !important; margin: 0 !important; }
body.elementor-page-31 .elementor-31 .ap-card__desc p { font-family: "Plus Jakarta Sans", sans-serif; font-size: 20px; line-height: 28px; color: #FFFFFF; }
body.elementor-page-31 .elementor-31 .ap-card__desc p + p { margin-top: 28px; }
body.elementor-page-31 .elementor-31 .ap-card:focus-visible { box-shadow: 0 0 0 4px #4368F5; }

/* 3. How we collaborate */
body.elementor-page-31 .elementor-31 .ap-col { background: url(/wp-content/uploads/2026/10/approach-forma-tl.svg) left top / auto 489px no-repeat, url(/wp-content/uploads/2026/10/approach-forma-br.svg) right bottom / auto 531px no-repeat, #FFCB00; border-radius: 35px; padding: 100px 20px !important; align-items: center; overflow: hidden; }
body.elementor-page-31 .elementor-31 .ap-col__row { flex-direction: row !important; gap: 55px !important; max-width: 1156px; width: 100%; align-items: center; }
body.elementor-page-31 .elementor-31 .ap-col__media { flex: none; width: 501px !important; }
body.elementor-page-31 .elementor-31 .ap-col__img { display: block; width: 100%; height: 467px; object-fit: cover; border-radius: 35px; }
body.elementor-page-31 .elementor-31 .ap-col__text { width: 572px; flex: 0 1 auto; align-items: flex-start; }
body.elementor-page-31 .elementor-31 .ap-col__title .elementor-heading-title { font-family: Figtree, sans-serif !important; font-weight: 700 !important; font-size: 48px !important; line-height: 58px !important; color: #000000 !important; margin: 0 0 55px; }
body.elementor-page-31 .elementor-31 .ap-col__body, body.elementor-page-31 .elementor-31 .ap-col__body p { font-family: Figtree, sans-serif !important; font-size: 36px !important; line-height: 43px !important; color: #000000 !important; }
body.elementor-page-31 .elementor-31 .ap-col__btn { margin-top: 55px !important; }

/* 4. Focus areas */
body.elementor-page-31 .elementor-31 .ap-fa { background: #F9F8F0; padding: 120px 20px !important; gap: 54px !important; align-items: center; }
body.elementor-page-31 .elementor-31 .ap-fa__top { gap: 12px !important; max-width: 1152px; width: 100%; text-align: center; }
body.elementor-page-31 .elementor-31 .ap-fa__eyebrow, body.elementor-page-31 .elementor-31 .ap-fa__eyebrow p { font-family: Figtree, sans-serif !important; font-size: 28px !important; line-height: 34px !important; color: #000000 !important; text-transform: uppercase; }
body.elementor-page-31 .elementor-31 .ap-fa__intro { width: 100%; max-width: 1218px !important; margin: 0 auto; text-align: center; }
body.elementor-page-31 .elementor-31 .ap-fa__intro, body.elementor-page-31 .elementor-31 .ap-fa__intro p { font-family: Figtree, sans-serif !important; font-size: 36px !important; line-height: 43px !important; color: #000000 !important; }
body.elementor-page-31 .elementor-31 .ap-fa__cards { flex-direction: row !important; gap: 40px !important; justify-content: center; width: 100%; max-width: 1288px; }
body.elementor-page-31 .elementor-31 .ap-fa__card { flex-direction: row !important; width: 624px; min-height: 637px; padding: 35px !important; gap: 24px !important; border-radius: 35px; }
body.elementor-page-31 .elementor-31 .ap-fa__card--orange { background: #EF8224; }
body.elementor-page-31 .elementor-31 .ap-fa__card--blue { background: #0097F2; }
body.elementor-page-31 .elementor-31 .ap-fa__col { flex: 1 1 0; justify-content: space-between; gap: 40px !important; align-items: flex-start; }
body.elementor-page-31 .elementor-31 .ap-fa__card--orange .ap-fa__head { gap: 69px !important; }
body.elementor-page-31 .elementor-31 .ap-fa__card--blue .ap-fa__head { gap: 34px !important; }
body.elementor-page-31 .elementor-31 .ap-fa__card-title .elementor-heading-title { font-family: Figtree, sans-serif !important; font-weight: 700 !important; font-size: 36px !important; line-height: 43px !important; color: #000000 !important; margin: 0; }
body.elementor-page-31 .elementor-31 .ap-fa__card-text, body.elementor-page-31 .elementor-31 .ap-fa__card-text p { font-family: "Plus Jakarta Sans", sans-serif !important; font-size: 20px !important; line-height: 28px !important; color: #000000 !important; }
body.elementor-page-31 .elementor-31 .ap-fa__card-text strong { font-weight: 700; }
body.elementor-page-31 .elementor-31 .ap-fa__card--blue .ap-fa__card-text { max-width: 294px; }
body.elementor-page-31 .elementor-31 .ap-fa__media { flex: none; width: 225px !important; }
body.elementor-page-31 .elementor-31 .ap-fa__img { width: 100%; height: 567px; border-radius: 35px; background: #D9D9D9; }

/* 5. Theory of Change */
body.elementor-page-31 .elementor-31 .ap-toc { min-height: 493px; background: #FFCB00 url(/wp-content/uploads/2026/10/approach-grafismo-toc.svg) center top / 1440px 493px no-repeat; padding: 50px 150px !important; gap: 55px !important; justify-content: center; align-items: center; overflow: hidden; }
body.elementor-page-31 .elementor-31 .ap-toc__box { max-width: 1140px; padding: 30px !important; gap: 15px !important; text-align: center; }
body.elementor-page-31 .elementor-31 .ap-toc__text, body.elementor-page-31 .elementor-31 .ap-toc__text p { font-family: Figtree, sans-serif !important; font-size: 36px !important; line-height: 43px !important; color: #000000 !important; }

/* Desktop e tablet: descrição do card no hover (mouse) ou no foco (teclado e toque), como a variante State=Hover. Texto centralizado na vertical (pedido do Ronnie, 17/10) */
@media (min-width: 768px) and (hover: hover) {
  body.elementor-page-31 .elementor-31 .ap-card:hover::after { opacity: 1; }
  body.elementor-page-31 .elementor-31 .ap-card:hover { justify-content: center; }
  body.elementor-page-31 .elementor-31 .ap-card:hover .ap-card__box { background: none; text-align: left; padding: 30px; }
  body.elementor-page-31 .elementor-31 .ap-card:hover .ap-card__label { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  body.elementor-page-31 .elementor-31 .ap-card:hover .ap-card__desc { position: static !important; width: auto; height: auto; margin: 0; overflow: visible; clip: auto; white-space: normal; }
}
@media (min-width: 768px) {
  body.elementor-page-31 .elementor-31 .ap-card:focus::after { opacity: 1; }
  body.elementor-page-31 .elementor-31 .ap-card:focus { justify-content: center; }
  body.elementor-page-31 .elementor-31 .ap-card:focus .ap-card__box { background: none; text-align: left; padding: 30px; }
  body.elementor-page-31 .elementor-31 .ap-card:focus .ap-card__label { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  body.elementor-page-31 .elementor-31 .ap-card:focus .ap-card__desc { position: static !important; width: auto; height: auto; margin: 0; overflow: visible; clip: auto; white-space: normal; }
}

/* Tablet e desktop estreito (fora do Figma) */
@media (min-width: 768px) and (max-width: 1300px) {
  body.elementor-page-31 .elementor-31 .ap-desk { display: none; }
  body.elementor-page-31 .elementor-31 .ap-ov__title .elementor-heading-title, body.elementor-page-31 .elementor-31 .ap-fa__title .elementor-heading-title, body.elementor-page-31 .elementor-31 .ap-toc__title .elementor-heading-title, body.elementor-page-31 .elementor-31 .ap-col__title .elementor-heading-title { text-wrap: balance; }
  body.elementor-page-31 .elementor-31 .ap-toc { background-size: cover; background-position: center; }
  body.elementor-page-31 .elementor-31 .ap-fa__cards { flex-direction: column !important; align-items: center; }
  body.elementor-page-31 .elementor-31 .ap-fa__card { width: 100%; max-width: 624px; }
  body.elementor-page-31 .elementor-31 .ap-toc { padding: 50px 40px !important; }
}
@media (min-width: 768px) and (max-width: 1180px) {
  body.elementor-page-31 .elementor-31 .ap-col__row { flex-direction: column !important; max-width: 572px; }
  body.elementor-page-31 .elementor-31 .ap-col__media { width: 100% !important; }
  body.elementor-page-31 .elementor-31 .ap-col__text { width: 100%; }
}
@media (min-width: 768px) and (max-width: 1024px) {
  body.elementor-page-31 .elementor-31 .ap-cards { grid-template-columns: minmax(0, 531px); }
}

/* Mobile (402 no Figma) */
@media (max-width: 767px) {
  body.elementor-page-31 .elementor-31 .ap-desk { display: none; }
  body.elementor-page-31 .elementor-31 .ap-mob { display: inline; }
  body.elementor-page-31 .elementor-31 .ap-btn .elementor-button { font-size: 18px !important; }

  /* Hero: foto de 581 com o menu de 98 por cima; cartão sobe 22 sobre ela */
  body.elementor-page-31 .elementor-31 .ap-hero { min-height: 0; padding-top: 461px !important; background-size: auto 581px; background-position: center -98px; }
  body.elementor-page-31 .elementor-31 .ap-hero__card { min-height: 386px; padding: 64px 20px !important; border-radius: 30px; }
  body.elementor-page-31 .elementor-31 .ap-hero__title .elementor-heading-title { font-size: 33px !important; line-height: 38px !important; }
  body.elementor-page-31 .elementor-31 .ap-traco { background: none; padding: 0; }
  body.elementor-page-31 .elementor-31 .ap-hero__text, body.elementor-page-31 .elementor-31 .ap-hero__text p { font-size: 18px !important; line-height: 25px !important; }
  body.elementor-page-31 .elementor-31 .ap-hero__text p { display: inline; }
  body.elementor-page-31 .elementor-31 .ap-hero__text p + p { margin-top: 0; }

  body.elementor-page-31 .elementor-31 .ap-ov { background: #F9F8F0 url(/wp-content/uploads/2026/10/approach-grafismo-overview-mobile.svg) left 0 top 60px / 100% auto no-repeat; padding: 40px 20px !important; gap: 40px !important; }
  body.elementor-page-31 .elementor-31 .ap-ov__top { gap: 48px !important; }
  body.elementor-page-31 .elementor-31 .ap-ov__text, body.elementor-page-31 .elementor-31 .ap-ov__text p { font-size: 24px !important; line-height: 29px !important; }
  body.elementor-page-31 .elementor-31 .ap-ov__text p + p { margin-top: 29px; }
  body.elementor-page-31 .elementor-31 .ap-ov__text p:last-child { margin-bottom: 29px; }
  body.elementor-page-31 .elementor-31 .ap-ov__title .elementor-heading-title, body.elementor-page-31 .elementor-31 .ap-fa__title .elementor-heading-title, body.elementor-page-31 .elementor-31 .ap-toc__title .elementor-heading-title { font-size: 33px !important; line-height: 38px !important; }

  body.elementor-page-31 .elementor-31 .ap-cards { grid-template-columns: minmax(0, 1fr); gap: 20px !important; }
  body.elementor-page-31 .elementor-31 .ap-card { aspect-ratio: auto; height: 300px; padding: 10px; border-radius: 30px; }
  body.elementor-page-31 .elementor-31 .ap-card__box { background: rgba(0,0,0,.64); border-radius: 30px; padding: 15px; text-align: left; }
  body.elementor-page-31 .elementor-31 .ap-card__label { font-weight: 700 !important; font-size: 28px !important; line-height: 34px !important; }
  /* primeiro card: véu de 50% e a descrição, sem o rótulo */
  body.elementor-page-31 .elementor-31 .ap-card--1 { height: 325px; justify-content: flex-start; }
  /* recorte das fotos como no Figma mobile: 2 pelo topo; 1, 3 e 4 mais abaixo (no 3 o rótulo cobria as crianças, no 4 a balança do laptop), Boris 17/10 */
  body.elementor-page-31 .elementor-31 .ap-card__img { object-position: 50% 0%; }
  body.elementor-page-31 .elementor-31 .ap-card--1 .ap-card__img { object-position: 50% 15%; }
  body.elementor-page-31 .elementor-31 .ap-card--3 .ap-card__img { object-position: 50% 35%; }
  body.elementor-page-31 .elementor-31 .ap-card--4 .ap-card__img { object-position: 50% 20%; }
  body.elementor-page-31 .elementor-31 .ap-card--1::after { opacity: 1; background: rgba(0,0,0,.5); }
  body.elementor-page-31 .elementor-31 .ap-card--1 .ap-card__box { background: none; }
  body.elementor-page-31 .elementor-31 .ap-card--1 .ap-card__label { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  body.elementor-page-31 .elementor-31 .ap-card--1 .ap-card__desc { position: static !important; width: auto; height: auto; margin: 0; overflow: visible; clip: auto; white-space: normal; }
  body.elementor-page-31 .elementor-31 .ap-card__desc p { font-size: 18px; line-height: 25px; }
  body.elementor-page-31 .elementor-31 .ap-card__desc p + p { margin-top: 25px; }

  body.elementor-page-31 .elementor-31 .ap-col { background: url(/wp-content/uploads/2026/10/approach-forma-tr-mobile.svg) right top / 309px auto no-repeat, url(/wp-content/uploads/2026/10/approach-forma-bl-mobile.svg) left bottom / 221px auto no-repeat, #FFCB00; padding: 40px 20px !important; }
  body.elementor-page-31 .elementor-31 .ap-col__row { flex-direction: column !important; gap: 55px !important; }
  body.elementor-page-31 .elementor-31 .ap-col__media { width: 100% !important; }
  body.elementor-page-31 .elementor-31 .ap-col__img { height: 439px; }
  body.elementor-page-31 .elementor-31 .ap-col__text { width: 100%; align-items: center; text-align: center; }
  body.elementor-page-31 .elementor-31 .ap-col__title .elementor-heading-title { font-size: 28px !important; line-height: 34px !important; margin: 0 0 34px; }
  body.elementor-page-31 .elementor-31 .ap-col__body, body.elementor-page-31 .elementor-31 .ap-col__body p { font-weight: 700; font-size: 28px !important; line-height: 34px !important; }
  body.elementor-page-31 .elementor-31 .ap-col__btn { margin-top: 40px !important; }

  body.elementor-page-31 .elementor-31 .ap-fa { padding: 40px 20px !important; gap: 50px !important; }
  body.elementor-page-31 .elementor-31 .ap-fa__top { gap: 10px !important; }
  body.elementor-page-31 .elementor-31 .ap-fa__eyebrow, body.elementor-page-31 .elementor-31 .ap-fa__eyebrow p { font-size: 24px !important; line-height: 29px !important; }
  body.elementor-page-31 .elementor-31 .ap-fa__title .elementor-heading-title { font-family: Figtree, sans-serif !important; font-weight: 700 !important; font-size: 28px !important; line-height: 34px !important; }
  body.elementor-page-31 .elementor-31 .ap-fa__intro { margin-top: -42px !important; }
  body.elementor-page-31 .elementor-31 .ap-fa__intro, body.elementor-page-31 .elementor-31 .ap-fa__intro p { font-family: "Plus Jakarta Sans", sans-serif !important; font-size: 18px !important; line-height: 25px !important; }
  body.elementor-page-31 .elementor-31 .ap-fa__cards { flex-direction: column !important; gap: 20px !important; }
  body.elementor-page-31 .elementor-31 .ap-fa__card { flex-direction: column !important; width: 100%; min-height: 0; gap: 25px !important; }
  body.elementor-page-31 .elementor-31 .ap-fa__head, body.elementor-page-31 .elementor-31 .ap-fa__card--orange .ap-fa__head, body.elementor-page-31 .elementor-31 .ap-fa__card--blue .ap-fa__head { gap: 40px !important; }
  body.elementor-page-31 .elementor-31 .ap-fa__card-title .elementor-heading-title { font-size: 28px !important; line-height: 34px !important; }
  body.elementor-page-31 .elementor-31 .ap-fa__card--blue .ap-fa__card-text { max-width: none; }
  body.elementor-page-31 .elementor-31 .ap-fa__media { width: 100% !important; }
  body.elementor-page-31 .elementor-31 .ap-fa__img { height: 328px; }

  body.elementor-page-31 .elementor-31 .ap-toc { min-height: 424px; background-image: url(/wp-content/uploads/2026/10/approach-grafismo-toc-mobile.svg); background-position: left top; background-size: 403px 493px; padding: 40px 20px !important; gap: 40px !important; }
  body.elementor-page-31 .elementor-31 .ap-toc__text, body.elementor-page-31 .elementor-31 .ap-toc__text p { font-family: "Plus Jakarta Sans", sans-serif !important; font-size: 18px !important; line-height: 25px !important; }
}/* End custom CSS */