:root{
  --font-heading:"PT Serif",Georgia,"Times New Roman",serif;--font-body:"Didact Gothic",Inter,Arial,sans-serif;--font-mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;
  --color-navy-950:#000011;--color-navy-950-rgb:0,0,17;--color-navy-950-hsl:240,100%,3%;
  --color-navy-900:#112250;--color-navy-900-rgb:17,34,80;--color-navy-900-hsl:224,65%,19%;
  --color-gold-500:#CBAA73;--color-gold-500-rgb:203,170,115;--color-gold-500-hsl:38,46%,62%;
  --color-rose-50:#F4EEEC;--color-rose-50-rgb:244,238,236;--color-rose-50-hsl:15,27%,94%;
  --color-white:#fff;--color-white-rgb:255,255,255;--color-white-hsl:0,0%,100%;
  --color-slate-300:#AEB8C8;--color-slate-300-rgb:174,184,200;--color-slate-300-hsl:217,19%,73%;
  --color-stone-300:#C8BFB8;--color-stone-300-rgb:200,191,184;--color-stone-300-hsl:26,13%,75%;
  --color-rose-400:#A48078;--color-rose-400-rgb:164,128,120;--color-rose-400-hsl:11,19%,56%;
  --color-olive-700:#474A42;--color-olive-700-rgb:71,74,66;--color-olive-700-hsl:83,6%,27%;
  --color-brown-900:#3B3220;--color-brown-900-rgb:59,50,32;--color-brown-900-hsl:40,30%,18%;
  --color-success:#3F5F4A;--color-warning:#A4803B;--color-error:#8A3D3D;--color-info:#405A7A;
  --color-primary:var(--color-navy-900);--color-secondary:var(--color-rose-50);--color-accent:var(--color-gold-500);--color-text:var(--color-navy-900);--color-text-muted:rgba(var(--color-navy-900-rgb),.68);--color-text-soft:rgba(var(--color-navy-900-rgb),.48);--color-bg:var(--color-rose-50);--color-surface:rgba(255,255,255,.74);--color-border:rgba(var(--color-navy-900-rgb),.12);
  --gradient-hero:radial-gradient(circle at 18% 18%,rgba(var(--color-gold-500-rgb),.30),transparent 26%),radial-gradient(circle at 78% 20%,rgba(var(--color-slate-300-rgb),.28),transparent 30%),radial-gradient(circle at 50% 92%,rgba(var(--color-rose-400-rgb),.20),transparent 34%),linear-gradient(135deg,#F4EEEC 0%,#fff 48%,#ECE6E3 100%);
  --gradient-navy:radial-gradient(circle at 16% 18%,rgba(var(--color-gold-500-rgb),.20),transparent 25%),radial-gradient(circle at 85% 72%,rgba(var(--color-slate-300-rgb),.16),transparent 26%),linear-gradient(135deg,#000011 0%,#112250 58%,#1B2E64 100%);
  --gradient-gold-line:linear-gradient(90deg,transparent 0%,rgba(var(--color-gold-500-rgb),.92) 18%,rgba(var(--color-gold-500-rgb),.24) 100%);--gradient-card:linear-gradient(145deg,rgba(255,255,255,.88),rgba(244,238,236,.76));--gradient-glow:radial-gradient(circle,rgba(var(--color-gold-500-rgb),.35) 0%,rgba(var(--color-gold-500-rgb),.08) 36%,transparent 72%);
  --opacity-hover:.88;--opacity-disabled:.42;--opacity-muted:.68;--opacity-decorative:.16;
  --text-display-size:clamp(3.1rem,7.4vw,6.8rem);--text-display-line:.94;--text-h1-size:clamp(2.7rem,5.8vw,5.4rem);--text-h1-line:1.02;--text-h2-size:clamp(2.1rem,4vw,3.6rem);--text-h2-line:1.08;--text-h3-size:clamp(1.6rem,2.4vw,2.3rem);--text-h3-line:1.15;--text-h4-size:clamp(1.28rem,1.7vw,1.7rem);--text-h4-line:1.22;--text-h5-size:1.1rem;--text-h5-line:1.28;--text-h6-size:.95rem;--text-h6-line:1.32;--text-body-lg-size:clamp(1.08rem,1.25vw,1.28rem);--text-body-lg-line:1.7;--text-body-size:1rem;--text-body-line:1.72;--text-body-sm-size:.92rem;--text-body-sm-line:1.62;--text-caption-size:.78rem;--text-caption-line:1.45;--text-label-size:.76rem;--text-label-line:1.15;--text-helper-size:.82rem;--text-helper-line:1.45;
  --container-max:1180px;--container-wide:1340px;--container-narrow:860px;--space-2:2px;--space-4:4px;--space-8:8px;--space-12:12px;--space-16:16px;--space-20:20px;--space-24:24px;--space-32:32px;--space-40:40px;--space-48:48px;--space-64:64px;--space-80:80px;--space-96:96px;--space-120:120px;--radius-xs:4px;--radius-sm:8px;--radius-md:14px;--radius-lg:22px;--radius-xl:34px;--radius-full:999px;
  --shadow-soft:0 18px 52px rgba(var(--color-navy-900-rgb),.08);--shadow-card:0 18px 46px rgba(var(--color-navy-900-rgb),.10);--shadow-hover:0 28px 80px rgba(var(--color-navy-900-rgb),.16);--shadow-gold:0 0 0 1px rgba(var(--color-gold-500-rgb),.28),0 24px 70px rgba(var(--color-gold-500-rgb),.18);--shadow-inset:inset 0 1px 0 rgba(255,255,255,.74);--ease-out:cubic-bezier(.16,1,.3,1);--ease-soft:cubic-bezier(.22,.61,.36,1);--duration-fast:180ms;--duration-base:320ms;--duration-slow:760ms;--duration-dream:1400ms;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--color-bg)}body{margin:0;font-family:var(--font-body);font-size:var(--text-body-size);line-height:var(--text-body-line);color:var(--color-text);background:linear-gradient(rgba(var(--color-navy-900-rgb),.025) 1px,transparent 1px),linear-gradient(90deg,rgba(var(--color-navy-900-rgb),.025) 1px,transparent 1px),var(--gradient-hero);background-size:38px 38px,38px 38px,auto;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-3;background:radial-gradient(circle at 30% 20%,rgba(var(--color-gold-500-rgb),.11),transparent 22%),radial-gradient(circle at 90% 48%,rgba(var(--color-navy-900-rgb),.09),transparent 28%);animation:em-bg-breathe 10s var(--ease-soft) infinite alternate}body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:-2;opacity:.22;background-image:url("data:image/svg+xml,%3Csvg width='220' height='220' viewBox='0 0 220 220' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23n)' opacity='.45'/%3E%3C/svg%3E");mix-blend-mode:multiply}a{color:inherit;text-decoration:none}img,svg{display:block;max-width:100%}button,input,textarea,select{font:inherit}::selection{color:#fff;background:var(--color-navy-900)}.container{width:min(calc(100% - 40px),var(--container-max));margin-inline:auto}.container-wide{width:min(calc(100% - 40px),var(--container-wide));margin-inline:auto}.container-narrow{width:min(calc(100% - 40px),var(--container-narrow));margin-inline:auto}
.eyebrow,.label,.badge{font-family:var(--font-body);font-size:var(--text-label-size);line-height:var(--text-label-line);letter-spacing:.18em;text-transform:uppercase}.eyebrow{display:inline-flex;align-items:center;gap:10px;color:rgba(var(--color-navy-900-rgb),.78)}.eyebrow:before{content:"";width:42px;height:1px;background:var(--gradient-gold-line)}h1,h2,h3,h4,h5,h6,.display,.h1,.h2,.h3,.h4,.h5,.h6{margin:0;font-family:var(--font-heading);font-weight:400;color:var(--color-navy-900);letter-spacing:-.035em}.display{font-size:var(--text-display-size);line-height:var(--text-display-line)}h1,.h1{font-size:var(--text-h1-size);line-height:var(--text-h1-line)}h2,.h2{font-size:var(--text-h2-size);line-height:var(--text-h2-line)}h3,.h3{font-size:var(--text-h3-size);line-height:var(--text-h3-line)}h4,.h4{font-size:var(--text-h4-size);line-height:var(--text-h4-line)}h5,.h5{font-size:var(--text-h5-size);line-height:var(--text-h5-line);letter-spacing:-.015em}h6,.h6{font-size:var(--text-h6-size);line-height:var(--text-h6-line);letter-spacing:.04em;text-transform:uppercase}p{margin:0;color:var(--color-text-muted)}.body-lg{font-family:var(--font-body);font-size:var(--text-body-lg-size);line-height:var(--text-body-lg-line);letter-spacing:.005em;font-weight:400}.body{font-family:var(--font-body);font-size:var(--text-body-size);line-height:var(--text-body-line);letter-spacing:.005em;font-weight:400}.body-sm{font-family:var(--font-body);font-size:var(--text-body-sm-size);line-height:var(--text-body-sm-line);letter-spacing:.01em;font-weight:400}.caption{font-family:var(--font-body);font-size:var(--text-caption-size);line-height:var(--text-caption-line);letter-spacing:.05em;color:var(--color-text-soft)}.helper{font-family:var(--font-body);font-size:var(--text-helper-size);line-height:var(--text-helper-line);color:var(--color-text-soft)}.text-gold{color:var(--color-gold-500)}.section{position:relative;padding:clamp(72px,9vw,132px) 0;isolation:isolate}.section:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:-2;background:radial-gradient(circle at 12% 18%,rgba(var(--color-gold-500-rgb),.12),transparent 22%),radial-gradient(circle at 84% 60%,rgba(var(--color-slate-300-rgb),.11),transparent 28%);opacity:.75}.section-navy{color:#fff;background:var(--gradient-navy);overflow:hidden}.section-navy h2,.section-navy h3,.section-navy .h2,.section-navy .h3{color:#fff}.section-navy p{color:rgba(255,255,255,.72)}.section-header{display:grid;grid-template-columns:minmax(0,.85fr) minmax(280px,.65fr);gap:var(--space-48);align-items:end;margin-bottom:var(--space-48)}.section-header p{max-width:560px}.gold-line{width:min(220px,42vw);height:1px;background:var(--gradient-gold-line);margin:var(--space-24) 0}.em-noise{position:absolute;inset:0;pointer-events:none;opacity:.2;background-image:url("data:image/svg+xml,%3Csvg width='180' height='180' viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)' opacity='.18'/%3E%3C/svg%3E");mix-blend-mode:multiply}
.navbar,.em-navbar{position:fixed;z-index:100;top:20px;left:0;right:0;margin-inline:auto;width:min(calc(100% - 40px),var(--container-wide));height:80px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-24);padding:0 24px;border:1px solid rgba(255,255,255,.6);border-radius:24px;background:rgba(244,238,236,.82);backdrop-filter:blur(18px);box-shadow:0 12px 32px rgba(17,34,80,.05),inset 0 1px 0 rgba(255,255,255,.8);animation:em-fade-down .8s var(--ease-out) both;transition:background var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out),height var(--duration-base) var(--ease-out)}.navbar.is-scrolled{background:rgba(244,238,236,.96);box-shadow:0 16px 42px rgba(17,34,80,.1),inset 0 1px 0 rgba(255,255,255,1);height:72px}.brand{position:relative;z-index:100;display:inline-flex;align-items:center;gap:14px;min-width:max-content;text-decoration:none}.brand-mark{position:relative;width:46px;height:46px;display:grid;place-items:center;border-radius:50%;background:transparent;border:1px solid rgba(var(--color-gold-500-rgb),.8);box-shadow:none;overflow:hidden}.brand-mark img{width:100%;height:100%;object-fit:cover;display:block}.brand-text{display:grid;line-height:1.15}.brand-name{font-family:var(--font-heading);font-size:1.45rem;letter-spacing:-.02em;color:var(--color-navy-900);margin:0}.brand-role{font-family:var(--font-body);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(var(--color-navy-900-rgb),.7);margin:0}.nav-links{display:flex;align-items:center;gap:clamp(16px,2.2vw,32px);margin:0 auto}.nav-links a{position:relative;font-family:var(--font-body);font-size:.95rem;color:rgba(var(--color-navy-900-rgb),.7);transition:color var(--duration-fast) var(--ease-out);font-weight:400;text-decoration:none}.nav-links a.active{color:var(--color-navy-900);font-weight:600}.nav-links a:after{content:"";position:absolute;left:50%;bottom:-6px;width:18px;height:2px;transform:translateX(-50%) scaleX(0);background:var(--color-gold-500);transition:transform var(--duration-base) var(--ease-out)}.nav-links a.active:after{transform:translateX(-50%) scaleX(1)}.nav-links a:hover{color:var(--color-navy-900)}.nav-links a:hover:after{transform:translateX(-50%) scaleX(1)}.btn-nav{min-width:210px;height:48px;padding:0 22px;border-radius:14px;background:#112250;color:#fff;font-family:var(--font-body);font-size:.95rem;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;border:1px solid rgba(var(--color-gold-500-rgb),0.35);box-shadow:0 4px 14px rgba(17,34,80,0.15);transition:all var(--duration-base) var(--ease-out)}.btn-nav:hover{transform:translateY(-1px);border-color:rgba(var(--color-gold-500-rgb),0.85);box-shadow:0 0 12px rgba(var(--color-gold-500-rgb),0.25),0 8px 24px rgba(17,34,80,0.25);color:#fff}.desktop-only-btn{display:inline-flex}.mobile-only-btn{display:none}.nav-mobile-toggle{position:relative;z-index:100;display:none;width:42px;height:42px;border:0;border-radius:50%;background:var(--color-navy-900);color:#fff;cursor:pointer}.nav-mobile-toggle span{display:block;width:18px;height:1px;margin:5px auto;background:currentColor}

.btn,.em-btn{--btn-bg:transparent;--btn-color:var(--color-navy-900);--btn-border:rgba(var(--color-navy-900-rgb),.20);position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 24px;border:1px solid var(--btn-border);border-radius:12px;color:var(--btn-color);background:var(--btn-bg);font-family:var(--font-body);font-size:1rem;font-weight:400;text-transform:none;cursor:pointer;overflow:hidden;box-shadow:var(--shadow-inset);transition:transform var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out),border-color var(--duration-base) var(--ease-out),background var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out)}.btn:before{content:"";position:absolute;z-index:-1;inset:-2px;background:radial-gradient(circle at var(--x,50%) var(--y,50%),rgba(var(--color-gold-500-rgb),.40),transparent 28%),linear-gradient(120deg,transparent,rgba(255,255,255,.22),transparent);opacity:0;transition:opacity var(--duration-base) var(--ease-out)}.btn:after{content:"";position:absolute;inset:1px;border-radius:inherit;z-index:-2;background:inherit}.btn:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(var(--color-navy-900-rgb),.12)}.btn:hover:before{opacity:1}.btn:active{transform:translateY(-1px) scale(.99)}.btn:focus-visible{outline:3px solid rgba(var(--color-gold-500-rgb),.42);outline-offset:3px}.btn[disabled],.btn.is-disabled{cursor:not-allowed;opacity:var(--opacity-disabled);transform:none;box-shadow:none}.btn-primary,.em-btn-primary{--btn-bg:#112250;--btn-color:#fff;--btn-border:rgba(var(--color-gold-500-rgb),0.35);box-shadow:0 12px 28px rgba(var(--color-navy-900-rgb),.15),0 0 12px rgba(var(--color-gold-500-rgb),0.15)}.btn-primary:hover{--btn-border:rgba(var(--color-gold-500-rgb),0.85);box-shadow:0 16px 42px rgba(var(--color-navy-900-rgb),.22),0 8px 24px rgba(var(--color-gold-500-rgb),.3)}.btn-secondary,.em-btn-secondary{--btn-bg:rgba(255,255,255,.2);--btn-color:var(--color-navy-900);--btn-border:rgba(var(--color-gold-500-rgb),.6);backdrop-filter:blur(8px)}.btn-secondary:hover{--btn-bg:rgba(244,238,236,.6);border-color:rgba(var(--color-gold-500-rgb),.9);box-shadow:0 10px 28px rgba(var(--color-navy-900-rgb),.06),0 0 10px rgba(var(--color-gold-500-rgb),0.12)}.btn-ghost{--btn-bg:transparent;--btn-color:var(--color-navy-900);--btn-border:transparent;min-height:auto;padding:0;border-radius:0;box-shadow:none;text-transform:none;letter-spacing:.02em}.btn-ghost:hover{box-shadow:none;transform:translateX(4px);color:var(--color-gold-500)}.btn-icon{width:18px;height:18px;transition:transform var(--duration-base) var(--ease-out)}.btn:hover .btn-icon{transform:translateX(3px)}
.hero,.em-hero{position:relative;min-height:100svh;display:flex;align-items:center;padding:120px 0 72px;overflow:hidden;isolation:isolate}.hero-bg{position:absolute;inset:0;z-index:-4;background:url("../images/background-hero-erica-melo-psicologa-clinica.png") center right / cover no-repeat}.hero-bg:before{content:"";position:absolute;width:58vw;height:58vw;left:-22vw;top:-16vw;border-radius:50%;background:var(--gradient-glow);filter:blur(10px);animation:em-orb 12s var(--ease-soft) infinite alternate}.hero-bg:after{content:"";position:absolute;width:44vw;height:44vw;right:-14vw;bottom:-8vw;border-radius:50%;background:radial-gradient(circle,rgba(var(--color-navy-900-rgb),.17),rgba(var(--color-gold-500-rgb),.08) 35%,transparent 70%);filter:blur(12px);animation:em-orb 14s var(--ease-soft) infinite alternate-reverse}.hero-root-svg{position:absolute;inset:auto -6vw -12vw auto;width:min(820px,70vw);height:auto;opacity:.18;z-index:-1;color:var(--color-navy-900);transform:rotate(-4deg)}.hero-root-svg path{stroke-dasharray:1200;stroke-dashoffset:1200;animation:em-draw 5s var(--ease-out) forwards,em-root-float 9s var(--ease-soft) infinite alternate}.hero-grain{position:absolute;inset:0;z-index:-3;opacity:.20;mix-blend-mode:multiply;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg width='220' height='220' viewBox='0 0 220 220' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='3'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23n)' opacity='.42'/%3E%3C/svg%3E")}.hero-grid{display:grid;grid-template-columns:48% 52%;gap:clamp(32px,4vw,56px);align-items:center;position:relative;z-index:3}.hero-copy{position:relative;max-width:100%}.hero-copy .eyebrow{margin-bottom:18px;animation:em-reveal-up var(--duration-dream) var(--ease-out) both;color:rgba(var(--color-gold-500-rgb),0.9);letter-spacing:0.12em;font-weight:500}.hero-copy .eyebrow:before{display:none}.hero-title{font-size:clamp(52px,4.2vw,78px);line-height:1.08;letter-spacing:-.035em;max-width:720px;text-wrap:balance;animation:em-reveal-up var(--duration-dream) var(--ease-out) 100ms both}.hero-divider{display:flex;align-items:center;gap:12px;margin:24px 0 24px;max-width:440px}.divider-line{height:1px;flex:1;background:linear-gradient(90deg,transparent,rgba(var(--color-gold-500-rgb),.4),transparent);transform-origin:left;animation:em-line-grow 1.4s var(--ease-out) .4s both}.divider-icon{width:20px;height:20px;color:var(--color-gold-500);opacity:0;animation:em-reveal-scale .8s var(--ease-out) .8s both;display:flex;align-items:center;justify-content:center}.hero-lead{max-width:620px;font-size:18px;line-height:1.65;color:rgba(17,34,80,.68);animation:em-reveal-up var(--duration-dream) var(--ease-out) 300ms both}.hero-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:32px;animation:em-reveal-up var(--duration-dream) var(--ease-out) 400ms both}.hero-trust{display:flex;flex-wrap:nowrap;gap:8px;margin-top:32px;max-width:none;animation:em-reveal-up var(--duration-dream) var(--ease-out) 500ms both}.hero-trust .badge{display:flex;align-items:center;gap:8px;padding:10px 14px;background:rgba(255,255,255,0.48);backdrop-filter:blur(14px);border:1px solid rgba(var(--color-gold-500-rgb),0.25);border-radius:14px;box-shadow:0 8px 32px rgba(17,34,80,0.04),inset 0 1px 0 rgba(255,255,255,0.7);font-family:var(--font-body);font-size:.82rem;line-height:1.25;color:var(--color-navy-900);text-transform:none;letter-spacing:normal;transition:transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.hero-trust .badge:hover{transform:translateY(-2px);border-color:rgba(var(--color-gold-500-rgb),0.55);box-shadow:0 12px 36px rgba(17,34,80,0.08),inset 0 1px 0 rgba(255,255,255,0.8)}.hero-trust .badge svg{flex-shrink:0}.hero-trust .badge span{text-align:left;display:block}.hero-image-wrapper{display:none;position:absolute;left:50%;right:0;top:0;height:100%;z-index:1;overflow:hidden}.hero-image-mirror{width:100%;height:100%;transform:scaleX(-1);overflow:hidden}.hero-image-mirror img{width:100%;height:100%;object-fit:cover;object-position:center center;animation:em-reveal-scale 1.6s var(--ease-out) 220ms both}.hero-image-overlay{position:absolute;inset:0;z-index:2;background:linear-gradient(90deg,#F4EEEC 0%,rgba(244,238,236,.92) 32%,rgba(244,238,236,.45) 52%,rgba(244,238,236,0) 68%)}
.card,.em-card{position:relative;padding:clamp(22px,3vw,34px);border-radius:var(--radius-xl);background:var(--gradient-card);border:1px solid rgba(var(--color-navy-900-rgb),.10);box-shadow:var(--shadow-card),var(--shadow-inset);overflow:hidden;transition:transform var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out),border-color var(--duration-base) var(--ease-out)}.card:before{content:"";position:absolute;inset:0;opacity:0;background:radial-gradient(circle at var(--x,18%) var(--y,20%),rgba(var(--color-gold-500-rgb),.22),transparent 30%),linear-gradient(180deg,rgba(255,255,255,.20),transparent);transition:opacity var(--duration-base) var(--ease-out);pointer-events:none}.card:after{content:"";position:absolute;top:0;left:24px;right:24px;height:1px;background:var(--gradient-gold-line);opacity:.65}.card:hover{transform:translateY(-8px);border-color:rgba(var(--color-gold-500-rgb),.42);box-shadow:var(--shadow-hover)}.card:hover:before{opacity:1}.card>*{position:relative;z-index:1}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-24)}.card-icon{width:44px;height:44px;display:grid;place-items:center;margin-bottom:var(--space-20);border-radius:50%;color:var(--color-gold-500);background:rgba(var(--color-navy-900-rgb),.06);border:1px solid rgba(var(--color-gold-500-rgb),.35)}.badge,.em-badge{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:8px 12px;border-radius:var(--radius-full);color:rgba(var(--color-navy-900-rgb),.74);background:rgba(255,255,255,.58);border:1px solid rgba(var(--color-navy-900-rgb),.10);box-shadow:var(--shadow-inset);white-space:nowrap}.badge-accent{color:var(--color-navy-900);background:rgba(var(--color-gold-500-rgb),.18);border-color:rgba(var(--color-gold-500-rgb),.40)}.badge-dark{color:#fff;background:rgba(var(--color-navy-950-rgb),.78);border-color:rgba(var(--color-gold-500-rgb),.32)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-20)}.form-field{display:grid;gap:8px}.form-field.full{grid-column:1/-1}.form-field label{font-size:var(--text-label-size);line-height:var(--text-label-line);letter-spacing:.13em;text-transform:uppercase;color:rgba(var(--color-navy-900-rgb),.70)}.input,.em-input,.form-field input,.form-field textarea,.form-field select{width:100%;min-height:54px;padding:14px 16px;border-radius:var(--radius-md);color:var(--color-navy-900);background:rgba(255,255,255,.76);border:1px solid rgba(var(--color-navy-900-rgb),.14);outline:none;box-shadow:var(--shadow-inset);transition:border-color var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out),background var(--duration-base) var(--ease-out)}.form-field textarea{min-height:132px;resize:vertical}.input::placeholder,.form-field input::placeholder,.form-field textarea::placeholder{color:rgba(var(--color-navy-900-rgb),.36)}.input:focus,.form-field input:focus,.form-field textarea:focus,.form-field select:focus{background:rgba(255,255,255,.95);border-color:rgba(var(--color-gold-500-rgb),.72);box-shadow:0 0 0 4px rgba(var(--color-gold-500-rgb),.14),var(--shadow-inset)}.input[disabled],.form-field input[disabled]{opacity:var(--opacity-disabled);cursor:not-allowed}.field-error{color:var(--color-error);font-size:var(--text-helper-size);line-height:var(--text-helper-line)}
.modal,.em-modal{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:24px;opacity:0;pointer-events:none;transition:opacity var(--duration-base) var(--ease-out)}.modal.is-open{opacity:1;pointer-events:auto}.modal-backdrop{position:absolute;inset:0;background:rgba(var(--color-navy-950-rgb),.62);backdrop-filter:blur(12px)}.modal-dialog{position:relative;width:min(620px,100%);padding:clamp(28px,5vw,52px);border-radius:var(--radius-xl);background:var(--gradient-card);border:1px solid rgba(var(--color-gold-500-rgb),.34);box-shadow:0 40px 120px rgba(0,0,17,.35);transform:translateY(18px) scale(.96);transition:transform var(--duration-base) var(--ease-out)}.modal.is-open .modal-dialog{transform:translateY(0) scale(1)}.modal-close{position:absolute;top:16px;right:16px;width:40px;height:40px;border:1px solid rgba(var(--color-navy-900-rgb),.10);border-radius:50%;background:rgba(255,255,255,.62);color:var(--color-navy-900);cursor:pointer}.tooltip,.em-tooltip{position:relative;display:inline-flex;align-items:center;gap:8px;cursor:help;border-bottom:1px dashed rgba(var(--color-gold-500-rgb),.75)}.tooltip:after{content:attr(data-tooltip);position:absolute;left:50%;bottom:calc(100% + 14px);width:max-content;max-width:260px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--color-navy-950);color:#fff;font-size:.78rem;line-height:1.35;letter-spacing:.01em;text-transform:none;transform:translateX(-50%) translateY(8px);opacity:0;pointer-events:none;box-shadow:0 16px 40px rgba(0,0,17,.30);transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.tooltip:before{content:"";position:absolute;left:50%;bottom:calc(100% + 7px);width:12px;height:12px;background:var(--color-navy-950);transform:translateX(-50%) rotate(45deg);opacity:0;transition:opacity var(--duration-base) var(--ease-out)}.tooltip:hover:after,.tooltip:hover:before,.tooltip:focus-visible:after,.tooltip:focus-visible:before{opacity:1}.tooltip:hover:after,.tooltip:focus-visible:after{transform:translateX(-50%) translateY(0)}
.spec-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-24)}.type-row{display:grid;grid-template-columns:180px 1fr;gap:var(--space-24);align-items:start;padding:var(--space-24) 0;border-bottom:1px solid rgba(var(--color-navy-900-rgb),.10)}.type-meta{display:grid;gap:6px;font-family:var(--font-mono);font-size:.76rem;line-height:1.5;color:rgba(var(--color-navy-900-rgb),.56)}.color-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-20)}.color-card{padding:18px;min-height:320px;display:grid;align-content:space-between}.swatch{height:112px;border-radius:24px;margin-bottom:18px;border:1px solid rgba(255,255,255,.44);box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 18px 42px rgba(var(--color-navy-900-rgb),.10)}.token-table{width:100%;border-collapse:collapse;overflow:hidden;border-radius:var(--radius-lg);background:rgba(255,255,255,.60);box-shadow:var(--shadow-soft)}.token-table th,.token-table td{padding:16px 18px;border-bottom:1px solid rgba(var(--color-navy-900-rgb),.10);text-align:left;vertical-align:top}.token-table th{font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(var(--color-navy-900-rgb),.58);background:rgba(var(--color-navy-900-rgb),.04)}.token-table td{font-size:.94rem;color:rgba(var(--color-navy-900-rgb),.74)}.code{font-family:var(--font-mono);font-size:.78rem;color:var(--color-brown-900);background:rgba(var(--color-gold-500-rgb),.14);border:1px solid rgba(var(--color-gold-500-rgb),.24);padding:3px 7px;border-radius:7px;white-space:nowrap}.component-showcase{display:grid;gap:var(--space-24)}.component-block{display:grid;gap:var(--space-24);padding:var(--space-32);border-radius:var(--radius-xl);background:rgba(255,255,255,.54);border:1px solid rgba(var(--color-navy-900-rgb),.10);box-shadow:var(--shadow-soft),var(--shadow-inset)}.component-actions{display:flex;flex-wrap:wrap;gap:var(--space-16);align-items:center}.icon-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--space-16)}.icon-card{display:grid;place-items:center;gap:12px;min-height:132px;padding:16px;border-radius:var(--radius-lg);background:rgba(255,255,255,.60);border:1px solid rgba(var(--color-navy-900-rgb),.10);transition:transform var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out)}.icon-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-card)}.icon-card svg{width:34px;height:34px;color:var(--color-gold-500);stroke-width:1.5}.animation-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-20)}.animation-card{min-height:190px;display:grid;place-items:center;text-align:center}.motion-dot{width:54px;height:54px;border-radius:50%;background:var(--color-gold-500);box-shadow:0 0 40px rgba(var(--color-gold-500-rgb),.55)}.motion-float{animation:em-float 2.8s var(--ease-soft) infinite alternate}.motion-pulse{animation:em-pulse-glow 2.4s var(--ease-soft) infinite}.motion-spin{animation:em-spin 5s linear infinite}.motion-draw{width:120px;height:80px;background:transparent;box-shadow:none}.motion-draw path{stroke-dasharray:500;stroke-dashoffset:500;animation:em-draw 2.6s var(--ease-out) infinite alternate}.footer{position:relative;padding:64px 0;background:var(--color-navy-950);color:#fff;overflow:hidden}.footer:before{content:"";position:absolute;inset:-50% -10% auto auto;width:640px;height:640px;border-radius:50%;background:radial-gradient(circle,rgba(var(--color-gold-500-rgb),.18),transparent 60%);animation:em-orb 12s var(--ease-soft) infinite alternate}.footer-grid{position:relative;display:grid;grid-template-columns:1fr auto;gap:32px;align-items:end}.footer h2{color:#fff;max-width:760px}.footer p{color:rgba(255,255,255,.62);margin-top:16px}.js-reveal{opacity:0;transform:translateY(34px);transition:opacity var(--duration-slow) var(--ease-out),transform var(--duration-slow) var(--ease-out);transition-delay:var(--delay,0ms)}.js-reveal.is-visible{opacity:1;transform:translateY(0)}.reveal-scale{opacity:0;transform:translateY(22px) scale(.96);transition:opacity var(--duration-slow) var(--ease-out),transform var(--duration-slow) var(--ease-out)}.reveal-scale.is-visible{opacity:1;transform:translateY(0) scale(1)}
@keyframes em-bg-breathe{from{transform:scale(1) rotate(0);opacity:.74}to{transform:scale(1.08) rotate(1deg);opacity:1}}@keyframes em-orb{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(38px,-28px,0) scale(1.08)}}@keyframes em-spin{to{transform:rotate(360deg)}}@keyframes em-fade-down{from{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:none}}@keyframes em-reveal-up{from{opacity:0;transform:translateY(28px);filter:blur(10px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes em-reveal-scale{from{opacity:0;transform:translateY(30px) scale(.94);filter:blur(12px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@keyframes em-line-grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes em-draw{to{stroke-dashoffset:0}}@keyframes em-root-float{from{transform:translate3d(0,0,0)}to{transform:translate3d(-18px,-24px,0)}}@keyframes em-float{from{transform:translate3d(0,0,0) rotate(-1deg)}to{transform:translate3d(0,-18px,0) rotate(1deg)}}@keyframes em-pulse-glow{0%,100%{box-shadow:var(--shadow-gold);transform:scale(1)}50%{box-shadow:0 0 0 1px rgba(var(--color-gold-500-rgb),.34),0 0 70px rgba(var(--color-gold-500-rgb),.34),0 24px 70px rgba(var(--color-navy-900-rgb),.18);transform:scale(1.035)}}@keyframes em-orbit-tilt{from{transform:rotate(-8deg) scale(1)}to{transform:rotate(-3deg) scale(1.02)}}
@media(max-width:1040px){.hero-grid,.section-header{grid-template-columns:1fr}.hero-grid{gap:32px}.hero-bg{background:var(--gradient-hero)!important}.hero-image-wrapper{display:block!important;position:relative;width:100%;height:400px;left:auto;right:auto;top:auto}.hero-image-overlay{background:linear-gradient(180deg,#F4EEEC 0%,rgba(244,238,236,.8) 15%,rgba(244,238,236,0) 40%)}.hero-title{font-size:clamp(44px,6vw,60px)}.hero-bottom-curve{display:none}.card-grid,.color-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.icon-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.animation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nav-links{display:none}.nav-mobile-toggle{display:block}.desktop-only-btn{display:none!important}.mobile-only-btn{display:inline-flex!important}.nav-links.is-open .btn-nav{display:inline-flex;margin-top:20px;width:100%;max-width:320px}}@media(max-width:720px){.container,.container-wide,.container-narrow{width:min(calc(100% - 28px),var(--container-max))}.navbar{top:10px;width:calc(100% - 20px);border-radius:26px}.brand-role{display:none}.hero{padding-top:112px;min-height:auto}.hero-title{font-size:clamp(38px,10vw,48px);line-height:1.08}.hero-actions{align-items:stretch}.hero-actions .btn{width:100%}.hero-trust{display:grid;grid-template-columns:1fr 1fr}.floating-panel{padding:16px}.panel-top{left:0;top:0}.panel-bottom{right:0;bottom:0}.em-metric{left:4%;bottom:18%;width:104px;height:104px}.em-metric span{font-size:2rem}.card-grid,.color-grid,.spec-grid,.form-grid,.animation-grid{grid-template-columns:1fr}.type-row{grid-template-columns:1fr;gap:12px}.icon-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:1fr}.token-table{display:block;overflow-x:auto}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}
/* Mobile menu base styles - added to support the mobile menu open state */
.nav-links.is-open{display:flex;flex-direction:column;position:fixed;inset:0;background:rgba(244,238,236,.96);backdrop-filter:blur(24px);padding:120px 24px 60px;align-items:center;justify-content:center;gap:32px;z-index:99;animation:em-fade-down .4s var(--ease-out) both}.nav-links.is-open a{font-size:1.4rem;font-weight:400;color:var(--color-navy-900)}.nav-links.is-open .btn,.nav-links.is-open .btn-nav{margin-top:20px;margin-left:0!important;width:100%;max-width:320px;font-size:1.05rem}
.nav-mobile-toggle.is-open span:first-child{transform:translateY(6px) rotate(45deg)}.nav-mobile-toggle.is-open span:last-child{transform:translateY(-6px) rotate(-45deg)}.nav-mobile-toggle span{transition:transform var(--duration-base) var(--ease-out)}

/* SEÇÃO 2: CONFLITOS INVISÍVEIS */
.em-conflitos {
  position: relative;
  padding: clamp(96px, 9vw, 132px) 0;
  background: linear-gradient(180deg, rgba(var(--color-rose-50-rgb), 0.4) 0%, rgba(var(--color-white-rgb), 0.8) 100%);
  overflow: hidden;
  isolation: isolate;
}
.em-conflitos-bg {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: 0.05;
  color: var(--color-navy-900);
}
.conflitos-root-svg {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: min(900px, 90vw);
  height: auto;
}
.conflitos-header {
  margin-bottom: clamp(48px, 6vw, 64px);
}
@media(min-width: 1041px) {
  .conflitos-header {
    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    gap: clamp(48px, 6vw, 80px);
    align-items: center;
  }
}
.conflitos-header .header-left {
  display: flex;
  flex-direction: column;
}
.conflitos-header .section-title {
  margin-top: 14px;
  font-size: clamp(32px, 3.8vw, 48px);
  line-height: 1.15;
  color: var(--color-navy-900);
}
.conflitos-header .supporting-text {
  margin-top: 20px;
  max-width: 620px;
  color: var(--color-text-muted);
}
.conflitos-header .editorial-block {
  position: relative;
  padding: 32px 36px;
  background: rgba(255, 255, 255, 0.4);
  border-left: 2.5px solid var(--color-gold-500);
  border-radius: 0 var(--radius-md) var(--radius-md) 0;
  backdrop-filter: blur(10px);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.6);
}
.conflitos-header .quote-mark {
  position: absolute;
  top: -12px;
  left: 20px;
  font-family: var(--font-heading);
  font-size: 5rem;
  line-height: 1;
  color: var(--color-gold-500);
  opacity: 0.16;
  pointer-events: none;
}
.conflitos-header .editorial-text {
  font-family: var(--font-body);
  font-size: clamp(1.05rem, 1.2vw, 1.22rem);
  line-height: 1.62;
  font-style: italic;
  color: var(--color-navy-900);
  font-weight: 400;
  margin: 0;
}
.conflitos-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-24);
}
.conflitos-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: clamp(24px, 2.5vw, 32px);
  background: rgba(255, 255, 255, 0.58);
  backdrop-filter: blur(14px);
  border: 1px solid rgba(var(--color-navy-900-rgb), 0.08);
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow-soft), var(--shadow-inset);
  transition: transform var(--duration-base) var(--ease-out), box-shadow var(--duration-base) var(--ease-out), border-color var(--duration-base) var(--ease-out);
}
.conflitos-card .card-title {
  margin: 20px 0 12px;
  font-family: var(--font-heading);
  font-size: 1.5rem;
  line-height: 1.28;
  color: var(--color-navy-900);
}
.conflitos-card .card-text {
  font-family: var(--font-body);
  font-size: 0.96rem;
  line-height: 1.65;
  color: var(--color-text-muted);
  margin: 0;
}
.conflitos-card .card-icon {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: var(--color-gold-500);
  background: rgba(var(--color-navy-900-rgb), 0.04);
  border: 1px solid rgba(var(--color-gold-500-rgb), 0.28);
  transition: transform var(--duration-base) var(--ease-out), background var(--duration-base) var(--ease-out), border-color var(--duration-base) var(--ease-out);
}
.conflitos-card .card-icon svg {
  width: 24px;
  height: 24px;
  stroke-width: 1.5;
}
.conflitos-card:hover {
  transform: translateY(-6px);
  border-color: rgba(var(--color-gold-500-rgb), 0.45);
  box-shadow: var(--shadow-hover);
}
.conflitos-card:hover .card-icon {
  transform: scale(1.08) rotate(2deg);
  background: rgba(var(--color-gold-500-rgb), 0.12);
  border-color: rgba(var(--color-gold-500-rgb), 0.68);
}
@media(max-width: 1040px) {
  .conflitos-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .conflitos-header .editorial-block {
    margin-top: 24px;
  }
}
@media(max-width: 720px) {
  .conflitos-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .conflitos-header .section-title {
    font-size: clamp(28px, 8vw, 36px);
  }
}

/* SEÇÃO 3: ATUAÇÃO CLÍNICA (NAVY) */
.em-atuacao {
  position: relative;
  padding: clamp(110px, 10vw, 140px) 0;
  background: var(--gradient-navy);
  overflow: hidden;
  isolation: isolate;
}
.em-atuacao-bg {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: 0.8;
}
.atuacao-root-svg {
  position: absolute;
  right: -5%;
  top: -5%;
  width: min(800px, 80vw);
  height: auto;
  opacity: 0.4;
}
.atuacao-left .section-title {
  color: #fff;
  margin-top: 14px;
  font-size: clamp(32px, 3.8vw, 46px);
  line-height: 1.15;
}
.atuacao-left .text-highlight {
  color: var(--color-rose-50);
  font-size: clamp(1.08rem, 1.25vw, 1.28rem);
  line-height: 1.68;
  margin-top: 24px;
}
.atuacao-left .text-complementary {
  color: rgba(255, 255, 255, 0.74);
  font-size: 1rem;
  line-height: 1.68;
  margin-top: 16px;
}
.atuacao-editorial {
  position: relative;
  margin-top: 32px;
  padding: 20px 24px;
  background: rgba(255, 255, 255, 0.03);
  border-left: 2px solid var(--color-gold-500);
  border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
}
.atuacao-editorial .editorial-quote {
  font-family: var(--font-heading);
  font-size: clamp(1.15rem, 1.3vw, 1.36rem);
  line-height: 1.5;
  font-style: italic;
  color: rgba(var(--color-gold-500-rgb), 0.95);
  margin: 0;
}
.btn-atuacao-navy {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 0 32px;
  border: 1px solid rgba(var(--color-gold-500-rgb), 0.35);
  border-radius: 12px;
  background: var(--color-gold-500);
  color: var(--color-navy-900);
  font-family: var(--font-body);
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  box-shadow: 0 12px 32px rgba(0, 0, 17, 0.24), 0 0 16px rgba(var(--color-gold-500-rgb), 0.25);
  transition: transform var(--duration-base) var(--ease-out), box-shadow var(--duration-base) var(--ease-out), background var(--duration-base) var(--ease-out), border-color var(--duration-base) var(--ease-out), color var(--duration-base) var(--ease-out);
}
.btn-atuacao-navy:hover {
  transform: translateY(-2px);
  background: #fff;
  border-color: #fff;
  color: var(--color-navy-900);
  box-shadow: 0 16px 40px rgba(0, 0, 17, 0.35), 0 0 20px rgba(var(--color-gold-500-rgb), 0.35);
}
.btn-atuacao-navy:active {
  transform: translateY(-1px);
}
.pilares-stack {
  display: flex;
  flex-direction: column;
  gap: var(--space-20);
}
.pilar-card {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 20px;
  padding: clamp(20px, 2.2vw, 28px);
  background: rgba(255, 255, 255, 0.04);
  backdrop-filter: blur(14px);
  border: 1px solid rgba(var(--color-gold-500-rgb), 0.18);
  border-radius: var(--radius-xl);
  box-shadow: 0 12px 32px rgba(0, 0, 17, 0.15), inset 0 1px 0 rgba(255, 255, 255, 0.03);
  transition: transform var(--duration-base) var(--ease-out), box-shadow var(--duration-base) var(--ease-out), border-color var(--duration-base) var(--ease-out), background var(--duration-base) var(--ease-out);
}
.pilar-card .pilar-icon {
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: var(--color-gold-500);
  background: rgba(var(--color-gold-500-rgb), 0.06);
  border: 1px solid rgba(var(--color-gold-500-rgb), 0.24);
  transition: transform var(--duration-base) var(--ease-out), background var(--duration-base) var(--ease-out), border-color var(--duration-base) var(--ease-out);
}
.pilar-card .pilar-icon svg {
  width: 22px;
  height: 22px;
  stroke-width: 1.5;
}
.pilar-card .pilar-info {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.pilar-card .pilar-title {
  font-family: var(--font-heading);
  font-size: 1.35rem;
  line-height: 1.25;
  color: var(--color-rose-50);
  margin: 0;
}
.pilar-card .pilar-text {
  font-family: var(--font-body);
  font-size: 0.94rem;
  line-height: 1.62;
  color: rgba(255, 255, 255, 0.72);
  margin: 0;
}
.pilar-card:hover {
  transform: translateY(-4px);
  border-color: rgba(var(--color-gold-500-rgb), 0.45);
  background: rgba(255, 255, 255, 0.07);
  box-shadow: 0 20px 42px rgba(0, 0, 17, 0.25);
}
.pilar-card:hover .pilar-icon {
  transform: scale(1.08) rotate(-3deg);
  background: rgba(var(--color-gold-500-rgb), 0.14);
  border-color: rgba(var(--color-gold-500-rgb), 0.68);
}
.atuacao-btn-wrapper {
  margin-top: clamp(24px, 3.5vw, 40px);
  margin-bottom: clamp(32px, 5vw, 64px);
}
@media(max-width: 1040px) {
  .atuacao-grid {
    display: flex;
    flex-direction: column;
    gap: 64px;
  }
  .em-atuacao {
    padding: 72px 0;
  }
  .atuacao-right {
    margin-top: 16px;
  }
}
@media(max-width: 720px) {
  .btn-atuacao-navy {
    width: 100%;
  }
  .pilar-card {
    flex-direction: column;
    gap: 16px;
    align-items: flex-start;
  }
}

/* SEÇÃO 4: PÚBLICOS ATENDIDOS */
.em-publicos {
  position: relative;
  padding: clamp(110px, 10vw, 130px) 0;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.9) 0%, var(--color-rose-50) 100%);
  overflow: hidden;
  isolation: isolate;
}
.em-publicos-bg {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: 0.8;
}
.publicos-root-svg {
  position: absolute;
  left: -5%;
  bottom: -5%;
  width: min(800px, 80vw);
  height: auto;
  opacity: 0.5;
}
.publicos-header {
  text-align: center;
  max-width: 780px;
  margin-inline: auto;
  margin-bottom: 0;
}
.publicos-header .supporting-text {
  margin-top: 20px;
  color: var(--color-text-muted);
}
@media(min-width: 1041px) {
  .publicos-header {
    display: grid;
    grid-template-columns: 1.08fr 0.92fr;
    gap: clamp(48px, 6vw, 80px);
    align-items: center;
    text-align: left;
    max-width: none;
    margin-inline: 0;
  }
  .publicos-header .gold-line {
    margin: 0 0 16px 0;
  }
}
@media(max-width: 1040px) {
  .publicos-header .gold-line {
    margin: 16px auto;
  }
}
.publicos-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(24px, 3vw, 32px);
  margin-top: clamp(52px, 6vw, 64px);
}
.publicos-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: clamp(28px, 3.2vw, 42px);
  background: rgba(255, 255, 255, 0.74);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(17, 34, 80, 0.10);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-card), var(--shadow-inset);
  transition: transform var(--duration-base) var(--ease-out), box-shadow var(--duration-base) var(--ease-out), border-color var(--duration-base) var(--ease-out);
}
.publicos-card:hover {
  transform: translateY(-8px);
  border-color: rgba(var(--color-gold-500-rgb), 0.45);
  box-shadow: var(--shadow-hover);
}
.publicos-card-header {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-bottom: 20px;
}
.publicos-card .card-icon {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: var(--color-gold-500);
  background: rgba(var(--color-navy-900-rgb), 0.04);
  border: 1px solid rgba(var(--color-gold-500-rgb), 0.28);
  transition: transform var(--duration-base) var(--ease-out), background var(--duration-base) var(--ease-out), border-color var(--duration-base) var(--ease-out);
  margin-bottom: 0;
  flex-shrink: 0;
}
.publicos-card .card-icon svg {
  width: 24px;
  height: 24px;
  stroke-width: 1.5;
}
.publicos-card:hover .card-icon {
  transform: translateY(-2px) scale(1.06) rotate(4deg);
  background: rgba(var(--color-gold-500-rgb), 0.12);
  border-color: rgba(var(--color-gold-500-rgb), 0.68);
}
.publicos-card .card-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: clamp(1.22rem, 1.5vw, 1.48rem);
  line-height: 1.25;
  color: var(--color-navy-900);
}
.publicos-card .card-text {
  font-family: var(--font-body);
  font-size: 1rem;
  line-height: 1.68;
  color: var(--color-text-muted);
  margin: 0;
}
.publicos-editorial {
  margin-top: clamp(36px, 4.5vw, 48px);
  text-align: center;
  max-width: 820px;
  margin-inline: auto;
}
.editorial-quote-icon {
  display: flex;
  justify-content: center;
  margin-bottom: 18px;
  color: var(--color-gold-500);
  opacity: 0.35;
  transition: transform var(--duration-base) var(--ease-out), opacity var(--duration-base) var(--ease-out);
}
.publicos-editorial:hover .editorial-quote-icon {
  transform: translateY(-3px) scale(1.05);
  opacity: 0.65;
}
.editorial-quote-icon svg {
  width: 32px;
  height: 32px;
}
.publicos-editorial .editorial-phrase {
  font-family: var(--font-heading);
  font-size: clamp(1.15rem, 1.35vw, 1.45rem);
  line-height: 1.55;
  font-style: italic;
  color: rgba(17, 34, 80, 0.85);
  font-weight: 400;
  margin: 0;
}
.publicos-cta {
  text-align: center;
  margin-top: clamp(20px, 3vw, 28px);
}
.btn-publicos-cta {
  border-color: rgba(var(--color-gold-500-rgb), 0.85);
  color: var(--color-navy-900);
}
.btn-publicos-cta:hover {
  background: rgba(var(--color-gold-500-rgb), 0.08);
  border-color: var(--color-gold-500);
  color: var(--color-navy-900);
  box-shadow: 0 10px 28px rgba(var(--color-navy-900-rgb), 0.06), 0 0 10px rgba(var(--color-gold-500-rgb), 0.12);
}
@media(max-width: 1040px) {
  .publicos-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
  }
  .em-publicos {
    padding: 72px 0;
  }
}
@media(max-width: 720px) {
  .publicos-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .btn-publicos-cta {
    width: 100%;
  }
}

/* ==========================================================================
   SEÇÃO 5: MODALIDADES DE ATENDIMENTO
   ========================================================================== */
.em-modalidades {
  position: relative;
  padding: clamp(110px, 10vw, 130px) 0;
  background: linear-gradient(180deg, var(--color-rose-50) 0%, rgba(255, 255, 255, 0.9) 100%);
  overflow: hidden;
  isolation: isolate;
}
.em-modalidades-bg {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: 0.8;
}
.modalidades-root-svg {
  position: absolute;
  right: -5%;
  bottom: -5%;
  width: min(800px, 80vw);
  height: auto;
  opacity: 0.45;
}
.em-modalidades-container {
  display: flex;
  flex-direction: column;
  gap: clamp(52px, 6vw, 72px);
}

/* ROW 1 (SUPERIOR): HEADER E FOTO LADO A LADO */
.modalidades-top-row {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: clamp(48px, 6vw, 80px);
  align-items: center;
}
.modalidades-header-block {
  text-align: left;
}
.modalidades-header-block .gold-line {
  margin: 16px 0;
}

/* COLUNA DA FOTO */
.erica-photo-block {
  position: relative;
  width: 100%;
  max-width: 400px;
  margin-inline: auto 0; /* Alinha à direita no desktop */
}
.photo-organic-bg {
  position: absolute;
  inset: -30px;
  z-index: -1;
  pointer-events: none;
}
.erica-photo-frame {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 5;
  border-radius: clamp(28px, 3.5vw, 36px);
  background: linear-gradient(135deg, #F4EEEC 0%, #fff 50%, #ECE6E3 100%);
  border: 1px solid rgba(var(--color-gold-500-rgb), 0.25);
  box-shadow: var(--shadow-card), 0 20px 50px rgba(17, 34, 80, 0.08);
  overflow: hidden;
  display: grid;
  place-items: center;
  isolation: isolate;
}
.photo-frame-border {
  position: absolute;
  inset: 12px;
  border: 1px solid rgba(var(--color-gold-500-rgb), 0.35);
  border-radius: clamp(20px, 2.8vw, 28px);
  pointer-events: none;
  z-index: 3;
}
.photo-placeholder-text {
  font-family: var(--font-body);
  font-size: 0.95rem;
  color: var(--color-text-soft);
  text-align: center;
  padding: 24px;
  z-index: 1;
  opacity: 0.8;
}
.erica-photo {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  transform: scale(1.15);
  object-fit: cover;
  object-position: center;
  z-index: 2;
  transition: opacity var(--duration-slow) var(--ease-out), transform 1s var(--ease-out);
}
.erica-photo-frame:hover .erica-photo {
  transform: scale(1.22);
}

/* SELO SOBREPOSTO */
.photo-overlay-badge {
  position: absolute;
  bottom: 24px;
  left: 24px;
  right: 24px;
  z-index: 4;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 20px;
  background: rgba(17, 34, 80, 0.85);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(var(--color-gold-500-rgb), 0.35);
  border-radius: 16px;
  box-shadow: 0 12px 32px rgba(17, 34, 80, 0.15), inset 0 1px 0 rgba(255, 255, 255, 0.1);
  color: #fff;
  transition: transform var(--duration-base) var(--ease-out), box-shadow var(--duration-base) var(--ease-out);
}
.photo-overlay-badge:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 40px rgba(17, 34, 80, 0.25);
}
.photo-overlay-badge .badge-icon {
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(var(--color-gold-500-rgb), 0.12);
  border: 1px solid rgba(var(--color-gold-500-rgb), 0.35);
  color: var(--color-gold-500);
}
.photo-overlay-badge .badge-icon svg {
  width: 18px;
  height: 18px;
}
.photo-overlay-badge .badge-text {
  font-family: var(--font-body);
  font-size: 0.86rem;
  line-height: 1.25;
  letter-spacing: 0.02em;
  color: rgba(255, 255, 255, 0.95);
  font-weight: 500;
  text-align: left;
}

/* ROW 2 (INFERIOR): MODALIDADES E CTA */
.modalidades-bottom-row {
  display: flex;
  flex-direction: column;
  gap: clamp(36px, 4.5vw, 48px);
}
.modalidades-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(20px, 2.5vw, 28px);
}
.modalidade-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: clamp(24px, 2.6vw, 36px);
  background: rgba(255, 255, 255, 0.74);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(17, 34, 80, 0.10);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-card), var(--shadow-inset);
  transition: transform var(--duration-base) var(--ease-out), box-shadow var(--duration-base) var(--ease-out), border-color var(--duration-base) var(--ease-out);
}
.modalidade-card:hover {
  transform: translateY(-6px);
  border-color: rgba(var(--color-gold-500-rgb), 0.45);
  box-shadow: var(--shadow-hover);
}
.modalidade-card-header {
  display: flex;
  align-items: center;
  gap: 18px;
  margin-bottom: 18px;
}
.modalidade-card .card-icon {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: var(--color-gold-500);
  background: rgba(var(--color-navy-900-rgb), 0.04);
  border: 1px solid rgba(var(--color-gold-500-rgb), 0.28);
  transition: transform var(--duration-base) var(--ease-out), background var(--duration-base) var(--ease-out), border-color var(--duration-base) var(--ease-out);
  margin-bottom: 0;
  flex-shrink: 0;
}
.modalidade-card .card-icon svg {
  width: 22px;
  height: 22px;
  stroke-width: 1.5;
}
.modalidade-card:hover .card-icon {
  transform: translateY(-2px) scale(1.06) rotate(3deg);
  background: rgba(var(--color-gold-500-rgb), 0.12);
  border-color: rgba(var(--color-gold-500-rgb), 0.68);
}
.modalidade-card .modalidade-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: clamp(1.22rem, 1.5vw, 1.48rem);
  line-height: 1.25;
  color: var(--color-navy-900);
}
.modalidade-card .card-text {
  font-family: var(--font-body);
  font-size: 0.94rem;
  line-height: 1.65;
  color: var(--color-text-muted);
  margin: 0;
  flex-grow: 1;
}

/* LISTA INDICADO PARA */
.modalidade-indicado {
  margin-top: 20px;
  padding-top: 16px;
  border-top: 1px solid rgba(var(--color-navy-900-rgb), 0.06);
}
.indicado-label {
  display: block;
  font-family: var(--font-body);
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: rgba(var(--color-navy-900-rgb), 0.48);
  margin-bottom: 10px;
  font-weight: 600;
}
.indicado-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px 16px;
}
.indicado-list li {
  font-family: var(--font-body);
  font-size: 0.84rem;
  line-height: 1.35;
  color: rgba(var(--color-navy-900-rgb), 0.62);
  position: relative;
  padding-left: 12px;
}
.indicado-list li:before {
  content: "•";
  position: absolute;
  left: 0;
  color: var(--color-gold-500);
  font-size: 0.95rem;
  line-height: 1;
  top: -1px;
}

/* CTA */
.modalidades-cta {
  display: flex;
  justify-content: center;
  gap: 16px;
  margin-top: 12px;
}

/* RESPONSIVIDADE SEÇÃO 5 */
@media(max-width: 1040px) {
  .modalidades-top-row {
    grid-template-columns: 1fr;
    gap: 40px;
    text-align: center;
  }
  .modalidades-header-block {
    text-align: center;
  }
  .modalidades-header-block .gold-line {
    margin: 16px auto;
  }
  .erica-photo-block {
    margin-inline: auto;
  }
  .em-modalidades {
    padding: 72px 0;
  }
}
@media(max-width: 768px) {
  .modalidades-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .modalidades-cta {
    flex-direction: column;
    align-items: stretch;
  }
  .modalidades-cta .btn {
    width: 100%;
  }
  .indicado-list {
    grid-template-columns: 1fr;
    gap: 6px;
  }
}

/* ==========================================================================
   SEÇÃO 6: PREVIEW SOBRE ÉRICA MELO
   ========================================================================== */
.em-about {
  position: relative;
  padding: clamp(110px, 10vw, 130px) 0;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.9) 0%, var(--color-rose-50) 100%);
  overflow: hidden;
  isolation: isolate;
}
.em-about-bg {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: 0.8;
}
.about-root-svg {
  position: absolute;
  left: -5%;
  bottom: -5%;
  width: min(800px, 80vw);
  height: auto;
  opacity: 0.45;
}
.em-about-container {
  display: grid;
  grid-template-columns: 42% 58%;
  gap: clamp(56px, 6vw, 80px);
  align-items: start;
}

/* COLUNA ESQUERDA: FOTO E MOLDURA PREMIUM */
.about-photo-col {
  position: sticky;
  top: 110px;
}
.erica-about-block {
  position: relative;
  width: 100%;
  max-width: 440px;
  margin-inline: auto;
}
.erica-about-frame {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 5;
  border-radius: clamp(28px, 3.5vw, 36px);
  background: linear-gradient(135deg, #F4EEEC 0%, #fff 50%, #ECE6E3 100%);
  border: 1px solid rgba(var(--color-gold-500-rgb), 0.25);
  box-shadow: var(--shadow-card), 0 20px 50px rgba(17, 34, 80, 0.08);
  overflow: hidden;
  display: grid;
  place-items: center;
  isolation: isolate;
}
.erica-about-photo {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  transform: scale(1.15);
  object-fit: cover;
  object-position: center;
  z-index: 2;
  transition: opacity var(--duration-slow) var(--ease-out), transform 1s var(--ease-out);
}
.erica-about-frame:hover .erica-about-photo {
  transform: scale(1.22);
}

/* COLUNA DIREITA: CONTEÚDO */
.about-content-col {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.about-text-block {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.about-text-block .text-primary {
  color: var(--color-navy-900);
}
.about-text-block .text-secondary-desc {
  color: var(--color-text-muted);
  font-size: 1rem;
  line-height: 1.68;
}

/* BLOCO EDITORIAL DE CITAÇÃO */
.about-editorial-quote {
  position: relative;
  margin: 12px 0;
  padding: 16px 24px;
  border-left: 2px solid var(--color-gold-500);
  background: rgba(var(--color-gold-500-rgb), 0.04);
  border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
}
.about-editorial-quote .quote-text {
  font-family: var(--font-heading);
  font-size: clamp(1.1rem, 1.25vw, 1.32rem);
  line-height: 1.55;
  font-style: italic;
  color: var(--color-navy-900);
  margin: 0;
}

/* TEXTO COMPLEMENTAR */
.about-complementary p {
  color: var(--color-text-muted);
  font-size: 1rem;
  line-height: 1.68;
}

/* PONTOS DE AUTORIDADE EDITORIAL */
.about-authority-list {
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin-top: 8px;
}
.about-authority-item {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(var(--color-navy-900-rgb), 0.08);
  transition: transform var(--duration-base) var(--ease-out);
}
.about-authority-item:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}
.about-authority-item:hover {
  transform: translateX(4px);
}
.about-authority-item .item-number {
  font-family: var(--font-heading);
  font-size: 1.45rem;
  line-height: 1;
  color: var(--color-gold-500);
  font-weight: 400;
  flex-shrink: 0;
}
.about-authority-item .item-info {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.about-authority-item .item-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.15rem;
  line-height: 1.25;
  color: var(--color-navy-900);
}
.about-authority-item .item-text {
  margin: 0;
  font-family: var(--font-body);
  font-size: 0.88rem;
  line-height: 1.55;
  color: var(--color-text-muted);
}

/* CTA */
.about-cta {
  margin-top: 8px;
}
.btn-about-cta {
  border-color: rgba(var(--color-gold-500-rgb), 0.85);
  color: var(--color-navy-900);
}
.btn-about-cta:hover {
  background: rgba(var(--color-gold-500-rgb), 0.08);
  border-color: var(--color-gold-500);
}

/* RESPONSIVIDADE SEÇÃO 6 */
@media(max-width: 1040px) {
  .em-about-container {
    grid-template-columns: 1fr;
    gap: 48px;
  }
  .about-photo-col {
    position: relative;
    top: 0;
    order: 2; /* Foto abaixo do texto no tablet/mobile */
  }
  .erica-about-block {
    margin-inline: 0;
  }
  .em-about {
    padding: 72px 0;
  }
}
@media(max-width: 720px) {
  .about-cta .btn {
    width: 100%;
  }
  .about-photo-col {
    order: 2;
  }
  .erica-about-block {
    margin-inline: auto;
  }
}

/* ==========================================================================
   SEÇÃO 8: CONTEÚDOS E REFLEXÕES
   ========================================================================== */
.em-conteudos {
  position: relative;
  padding: clamp(110px, 10vw, 130px) 0;
  background: linear-gradient(180deg, var(--color-white) 0%, var(--color-rose-50) 100%);
  overflow: hidden;
  isolation: isolate;
}
.em-conteudos-bg {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: 0.8;
}
.conteudos-root-svg {
  position: absolute;
  right: -5%;
  bottom: -5%;
  width: min(800px, 80vw);
  height: auto;
  opacity: 0.12;
  color: var(--color-navy-900);
}
.conteudos-header {
  margin-bottom: 56px;
}
@media(min-width: 1041px) {
  .conteudos-header {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: clamp(48px, 6vw, 80px);
    align-items: center;
    text-align: left;
  }
  .conteudos-header-right {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .conteudos-header .gold-line {
    margin: 0 0 16px 0;
  }
}
@media(max-width: 1040px) {
  .conteudos-header {
    text-align: center;
  }
  .conteudos-header .gold-line {
    margin: 16px auto;
  }
}
.conteudos-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(24px, 3vw, 32px);
  margin-bottom: 56px;
}
.conteudo-card {
  display: flex;
  flex-direction: column;
  background: rgba(255, 255, 255, 0.74);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(17, 34, 80, 0.10);
  border-radius: clamp(24px, 2.5vw, 32px);
  box-shadow: var(--shadow-card), var(--shadow-inset);
  transition: transform var(--duration-base) var(--ease-out), box-shadow var(--duration-base) var(--ease-out), border-color var(--duration-base) var(--ease-out);
  overflow: hidden;
  height: 100%;
}
.conteudo-card:after {
  content: "";
  position: absolute;
  top: 0;
  left: 24px;
  right: 24px;
  height: 1px;
  background: var(--gradient-gold-line);
  opacity: 0.65;
  transition: opacity var(--duration-base) var(--ease-out);
}
.conteudo-card:hover {
  transform: translateY(-8px);
  border-color: rgba(var(--color-gold-500-rgb), 0.45);
  box-shadow: var(--shadow-hover);
}
.card-image-placeholder {
  width: 100%;
  aspect-ratio: 16 / 9;
  background: linear-gradient(135deg, rgba(var(--color-gold-500-rgb), 0.06) 0%, rgba(var(--color-rose-400-rgb), 0.03) 100%);
  display: grid;
  place-items: center;
  border-bottom: 1px solid rgba(17, 34, 80, 0.06);
  color: rgba(var(--color-navy-900-rgb), 0.22);
  transition: color var(--duration-base) var(--ease-out), background var(--duration-base) var(--ease-out);
  overflow: hidden;
}
.card-image-placeholder img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform var(--duration-base) var(--ease-out);
}
.conteudo-card:hover .card-image-placeholder img {
  transform: scale(1.04);
}
.card-image-placeholder .placeholder-watermark {
  width: 48px;
  height: 48px;
  stroke-width: 1.2;
  transition: transform var(--duration-base) var(--ease-out);
}
.conteudo-card:hover .card-image-placeholder {
  color: rgba(var(--color-gold-500-rgb), 0.65);
  background: linear-gradient(135deg, rgba(var(--color-gold-500-rgb), 0.12) 0%, rgba(var(--color-rose-400-rgb), 0.06) 100%);
}
.conteudo-card:hover .card-image-placeholder .placeholder-watermark {
  transform: scale(1.05);
}
.card-content-wrap {
  padding: clamp(24px, 2.5vw, 32px);
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}
.card-category {
  align-self: flex-start;
  margin-bottom: 16px;
}
.conteudo-card .card-title {
  font-family: var(--font-heading);
  font-size: clamp(1.22rem, 1.45vw, 1.48rem);
  line-height: 1.3;
  color: var(--color-navy-900);
  margin: 0 0 12px 0;
}
.conteudo-card .card-text {
  font-family: var(--font-body);
  font-size: 0.95rem;
  line-height: 1.65;
  color: var(--color-text-muted);
  margin: 0 0 24px 0;
  flex-grow: 1;
}
.card-cta-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-body);
  font-size: 0.92rem;
  font-weight: 600;
  color: var(--color-navy-900);
  align-self: flex-start;
  transition: color var(--duration-fast) var(--ease-out);
}
.card-cta-link .cta-arrow {
  width: 16px;
  height: 16px;
  transition: transform var(--duration-base) var(--ease-out);
}
.card-cta-link:hover {
  color: var(--color-gold-500);
}
.conteudo-card:hover .card-cta-link {
  color: var(--color-gold-500);
}
.conteudo-card:hover .card-cta-link .cta-arrow {
  transform: translateX(4px);
}
.conteudo-highlight-block {
  position: relative;
  margin-top: 56px;
  margin-bottom: 40px;
  padding: clamp(24px, 3vw, 32px) clamp(28px, 4vw, 48px);
  background: rgba(255, 255, 255, 0.65);
  backdrop-filter: blur(8px);
  border-left: 3px solid var(--color-gold-500);
  border-radius: 0 var(--radius-lg) var(--radius-lg) 0;
  box-shadow: var(--shadow-card), var(--shadow-inset);
  max-width: 820px;
  margin-inline: auto;
  text-align: left;
  overflow: hidden;
}
.highlight-quote {
  font-family: var(--font-heading);
  font-size: clamp(1.18rem, 1.5vw, 1.48rem);
  line-height: 1.55;
  font-style: italic;
  color: var(--color-navy-900);
  margin: 0;
}
.conteudos-cta {
  text-align: center;
  margin-top: 40px;
}
.btn-conteudos-cta {
  border-color: rgba(var(--color-gold-500-rgb), 0.85);
  color: var(--color-navy-900);
}
.btn-conteudos-cta:hover {
  background: rgba(var(--color-gold-500-rgb), 0.08);
  border-color: var(--color-gold-500);
}
@media(max-width: 1040px) {
  .conteudos-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
    margin-bottom: 40px;
  }
  .em-conteudos {
    padding: 72px 0;
  }
  .conteudo-highlight-block {
    margin-top: 40px;
    margin-bottom: 32px;
  }
}
@media(max-width: 720px) {
  .conteudos-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .conteudos-cta .btn {
    width: 100%;
  }
}

/* ==========================================================================
   SEÇÃO 9: PERGUNTAS FREQUENTES (FAQ)
   ========================================================================== */
.em-faq {
  position: relative;
  padding: clamp(110px, 10vw, 130px) 0;
  background: var(--gradient-navy);
  overflow: hidden;
  isolation: isolate;
}
.em-faq-bg {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: 0.8;
}
.faq-root-svg {
  position: absolute;
  right: -5%;
  top: -5%;
  width: min(800px, 80vw);
  height: auto;
  opacity: 0.45;
  color: var(--color-navy-900);
}
.faq-glow-orb {
  position: absolute;
  width: 320px;
  height: 320px;
  right: -50px;
  top: 15%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(var(--color-gold-500-rgb), 0.14) 0%, transparent 70%);
  filter: blur(40px);
  pointer-events: none;
  z-index: -1;
  animation: em-orb 15s var(--ease-soft) infinite alternate;
}
.faq-grid {
  display: grid;
  grid-template-columns: 42% 58%;
  gap: clamp(56px, 6vw, 80px);
  align-items: start;
}
.faq-left-col {
  display: flex;
  flex-direction: column;
}
.faq-left-col .section-title {
  margin-top: 14px;
  font-size: clamp(32px, 3.8vw, 46px);
  line-height: 1.15;
}
.faq-editorial-block {
  position: relative;
  margin-top: 24px;
  margin-bottom: 32px;
  padding: 20px 24px;
  background: rgba(255, 255, 255, 0.03);
  border-left: 2px solid var(--color-gold-500);
  border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
}
.faq-editorial-block .quote-mark {
  position: absolute;
  top: -8px;
  left: 14px;
  font-family: var(--font-heading);
  font-size: 4.5rem;
  line-height: 1;
  color: var(--color-gold-500);
  opacity: 0.12;
  pointer-events: none;
}
.faq-editorial-block .editorial-phrase {
  font-family: var(--font-heading);
  font-size: clamp(1.08rem, 1.2vw, 1.25rem);
  line-height: 1.55;
  font-style: italic;
  color: rgba(255, 255, 255, 0.88);
  font-weight: 400;
  margin: 0;
}
.btn-faq-cta {
  border-color: rgba(var(--color-gold-500-rgb), 0.6);
  color: var(--color-rose-50);
  background: rgba(255, 255, 255, 0.04);
  backdrop-filter: blur(8px);
}
.btn-faq-cta:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: var(--color-gold-500);
  color: var(--color-white);
}

/* FAQ ACCORDION */
.accordion {
  display: flex;
  flex-direction: column;
  gap: clamp(14px, 2vw, 18px);
}
.faq-item {
  background: rgba(255, 255, 255, 0.04);
  backdrop-filter: blur(8px);
  border: 1px solid rgba(203, 170, 115, 0.18);
  border-radius: 20px;
  box-shadow: 0 8px 32px rgba(0, 0, 17, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.02);
  transition: border-color var(--duration-base) var(--ease-out), background var(--duration-base) var(--ease-out), box-shadow var(--duration-base) var(--ease-out), transform var(--duration-base) var(--ease-out);
  overflow: hidden;
}
.faq-item:hover,
.faq-item.is-open {
  border-color: rgba(203, 170, 115, 0.45);
  background: rgba(255, 255, 255, 0.06);
}
.faq-item.is-open {
  border-color: rgba(203, 170, 115, 0.65);
  box-shadow: 0 12px 40px rgba(0, 0, 17, 0.25), 0 0 15px rgba(203, 170, 115, 0.05);
}
.faq-question {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 22px 28px;
  background: transparent;
  border: 0;
  text-align: left;
  cursor: pointer;
  color: var(--color-rose-50);
  font-family: var(--font-heading);
  font-size: clamp(1.08rem, 1.25vw, 1.25rem);
  font-weight: 400;
  line-height: 1.35;
  outline: none;
  transition: color var(--duration-fast) var(--ease-out);
}
.faq-question:hover {
  color: var(--color-white);
}
.faq-question:focus-visible {
  background: rgba(255, 255, 255, 0.02);
}
.faq-question .question-text {
  flex-grow: 1;
}
.faq-icon {
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: var(--color-gold-500);
  background: rgba(203, 170, 115, 0.06);
  border: 1px solid rgba(203, 170, 115, 0.28);
  transition: transform var(--duration-base) var(--ease-out), background var(--duration-base) var(--ease-out), border-color var(--duration-base) var(--ease-out);
}
.faq-icon svg {
  width: 16px;
  height: 16px;
  stroke-width: 2.2;
}
.faq-question[aria-expanded="true"] .faq-icon {
  transform: rotate(180deg);
  background: rgba(203, 170, 115, 0.16);
  border-color: var(--color-gold-500);
  color: var(--color-gold-500);
}
.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height var(--duration-base) var(--ease-out);
}
.faq-answer-inner {
  padding: 0 28px 24px 28px;
}
.faq-answer p {
  font-family: var(--font-body);
  font-size: 0.96rem;
  line-height: 1.68;
  color: rgba(255, 255, 255, 0.72);
  margin: 0;
}

/* RESPONSIVIDADE SEÇÃO 9 */
@media(max-width: 1040px) {
  .faq-grid {
    grid-template-columns: 1fr;
    gap: 48px;
  }
  .em-faq {
    padding: 72px 0;
  }
  .accordion {
    gap: 12px;
  }
  .faq-question {
    padding: 18px 24px;
  }
  .faq-answer-inner {
    padding: 0 24px 20px 24px;
  }
}
@media(max-width: 720px) {
  .faq-question {
    padding: 16px 20px;
    gap: 14px;
  }
  .faq-answer-inner {
    padding: 0 20px 18px 20px;
  }
  .faq-btn-wrapper .btn {
    width: 100%;
  }
}

/* ==========================================================================
   SEÇÃO 10: INICIE UMA CONVERSA (CTA FINAL)
   ========================================================================== */
.em-cta-final {
  position: relative;
  padding: clamp(120px, 12vw, 150px) 0;
  background: linear-gradient(180deg, #112250 0%, #000011 100%);
  overflow: hidden;
  isolation: isolate;
}
.em-cta-final-bg {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: 0.8;
}
.cta-final-root-svg {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: min(900px, 90vw);
  height: auto;
  opacity: 0.45;
  color: var(--color-navy-900);
}
.cta-final-glow {
  position: absolute;
  width: 440px;
  height: 440px;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  background: radial-gradient(circle, rgba(var(--color-gold-500-rgb), 0.12) 0%, transparent 70%);
  filter: blur(50px);
  pointer-events: none;
  z-index: -1;
  animation: em-orb 18s var(--ease-soft) infinite alternate-reverse;
}
.cta-final-card {
  text-align: center;
  max-width: 880px;
  margin-inline: auto;
  padding: clamp(48px, 6vw, 72px) clamp(24px, 4vw, 56px);
  background: rgba(255, 255, 255, 0.02);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(203, 170, 115, 0.14);
  border-radius: var(--radius-xl);
  box-shadow: 0 24px 64px rgba(0, 0, 17, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.02);
}
.cta-final-header {
  margin-bottom: 40px;
}
.cta-final-header .eyebrow {
  margin-bottom: 20px;
}
.cta-final-title {
  font-family: var(--font-heading);
  font-size: clamp(1.8rem, 3vw, 2.7rem);
  line-height: 1.22;
  color: var(--color-rose-50);
  margin: 0 auto;
  text-wrap: balance;
  font-weight: 400;
  max-width: 780px;
}
.cta-final-header .centered-line {
  margin: 24px auto;
}
.cta-final-header .supporting-text {
  font-family: var(--font-body);
  font-size: clamp(1.02rem, 1.25vw, 1.18rem);
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.74);
  margin: 0 auto;
  text-wrap: balance;
  max-width: 720px;
}
.cta-final-buttons {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  margin-bottom: 48px;
}
.btn-cta-whatsapp {
  --btn-bg: var(--color-rose-50);
  --btn-color: var(--color-navy-900);
  --btn-border: rgba(var(--color-gold-500-rgb), 0.4);
  font-weight: 600;
}
.btn-cta-whatsapp:hover {
  --btn-bg: var(--color-white);
  border-color: var(--color-gold-500);
  box-shadow: 0 0 24px rgba(var(--color-gold-500-rgb), 0.35), 0 12px 32px rgba(0, 0, 17, 0.2);
}
.btn-cta-whatsapp .btn-icon-whatsapp {
  flex-shrink: 0;
  stroke-width: 2;
  transition: transform var(--duration-base) var(--ease-out);
}
.btn-cta-whatsapp:hover .btn-icon-whatsapp {
  transform: scale(1.08) rotate(4deg);
}
.btn-cta-contato {
  border-color: rgba(var(--color-gold-500-rgb), 0.6);
  color: var(--color-rose-50);
}
.btn-cta-contato:hover {
  background: rgba(203, 170, 115, 0.12);
  border-color: var(--color-gold-500);
  color: var(--color-white);
}
.cta-final-trust {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: clamp(10px, 1.5vw, 16px);
  margin-bottom: 40px;
}
.cta-trust-badge {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(203, 170, 115, 0.20);
  border-radius: var(--radius-full);
  padding: 8px 18px;
  font-size: 0.82rem;
  letter-spacing: 0.04em;
  text-transform: none;
  color: rgba(255, 255, 255, 0.82);
  display: inline-flex;
  align-items: center;
  gap: 8px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.02);
  transition: border-color var(--duration-base) var(--ease-out), background var(--duration-base) var(--ease-out), color var(--duration-base) var(--ease-out), transform var(--duration-base) var(--ease-out);
}
.cta-trust-badge:hover {
  border-color: rgba(203, 170, 115, 0.55);
  color: var(--color-white);
  background: rgba(255, 255, 255, 0.08);
  transform: translateY(-2px);
}
.cta-trust-badge .badge-icon {
  color: var(--color-gold-500);
  display: flex;
  align-items: center;
  flex-shrink: 0;
}
.cta-final-subtext {
  font-family: var(--font-body);
  font-size: 0.9rem;
  line-height: 1.62;
  color: rgba(255, 255, 255, 0.48);
  max-width: 580px;
  margin: 0 auto;
  text-wrap: balance;
  font-style: italic;
}

/* RESPONSIVIDADE SEÇÃO 10 */
@media(max-width: 1040px) {
  .em-cta-final {
    padding: 80px 0 90px 0;
  }
  .cta-final-card {
    padding: 48px 32px;
    border-radius: var(--radius-lg);
  }
  .cta-final-trust {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    max-width: 580px;
    margin-inline: auto;
  }
  .cta-trust-badge {
    width: 100%;
    justify-content: center;
  }
}
@media(max-width: 720px) {
  .cta-final-card {
    padding: 40px 20px;
  }
  .cta-final-buttons {
    flex-direction: column;
    align-items: stretch;
    gap: 14px;
    max-width: 320px;
    margin-inline: auto;
  }
  .cta-final-buttons .btn {
    width: 100%;
  }
  .cta-final-trust {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}

/* ==========================================================================
   RODAPÉ (FOOTER)
   ========================================================================== */
.em-footer {
  position: relative;
  padding: clamp(80px, 8vw, 110px) 0 clamp(32px, 4vw, 48px) 0;
  background: linear-gradient(180deg, #000011 0%, #0a1128 100%);
  color: var(--color-white);
  overflow: hidden;
  isolation: isolate;
  border-top: 1px solid rgba(203, 170, 115, 0.08);
}
.footer-bg {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: 0.95;
}
.footer-glow {
  position: absolute;
  width: 460px;
  height: 460px;
  left: 10%;
  top: 20%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(var(--color-gold-500-rgb), 0.05) 0%, transparent 72%);
  filter: blur(40px);
  pointer-events: none;
  animation: em-orb 16s var(--ease-soft) infinite alternate;
}
.footer-root-svg {
  position: absolute;
  right: -6%;
  bottom: -8%;
  width: min(600px, 45vw);
  height: auto;
  opacity: 0.35;
  color: var(--color-gold-500);
  transform: rotate(-10deg);
  pointer-events: none;
}
.em-footer-container {
  position: relative;
  z-index: 2;
}
.footer-columns {
  display: grid;
  grid-template-columns: 1.35fr 0.7fr 0.85fr 1.1fr;
  gap: clamp(32px, 3.5vw, 56px);
  margin-bottom: clamp(48px, 6vw, 64px);
}
.footer-col {
  display: flex;
  flex-direction: column;
}
.footer-brand {
  margin-bottom: 8px;
}
.footer-brand .brand-name {
  color: var(--color-white) !important;
}
.footer-brand .brand-role {
  color: var(--color-gold-500) !important;
}
.footer-crp {
  font-family: var(--font-body);
  font-size: 0.76rem;
  line-height: 1.15;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.45);
  margin-left: 60px; /* Alinhado ao início do texto do brand */
}
.footer-brand-desc {
  font-family: var(--font-body);
  font-size: 0.94rem;
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.65);
  margin-top: 18px;
  max-width: 320px;
}
.footer-socials {
  display: flex;
  gap: 12px;
  margin-top: 24px;
}
.social-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(203, 170, 115, 0.18);
  color: var(--color-gold-500);
  transition: transform var(--duration-base) var(--ease-out), background var(--duration-base) var(--ease-out), border-color var(--duration-base) var(--ease-out), color var(--duration-base) var(--ease-out);
}
.social-link svg {
  width: 18px;
  height: 18px;
}
.social-link:hover {
  transform: translateY(-2.5px);
  background: rgba(203, 170, 115, 0.12);
  border-color: var(--color-gold-500);
  color: var(--color-white);
}
.footer-title {
  font-family: var(--font-heading);
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.25;
  color: var(--color-white);
  margin-bottom: 22px;
  position: relative;
  display: inline-block;
}
.footer-title:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -6px;
  width: 24px;
  height: 1px;
  background: var(--color-gold-500);
}
.footer-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.footer-list a {
  font-family: var(--font-body);
  font-size: 0.95rem;
  color: rgba(255, 255, 255, 0.68);
  transition: transform var(--duration-base) var(--ease-out), color var(--duration-base) var(--ease-out);
  display: inline-block;
}
.footer-list a:hover {
  color: var(--color-gold-500);
  transform: translateX(4px);
}
.footer-list span {
  font-family: var(--font-body);
  font-size: 0.95rem;
  color: rgba(255, 255, 255, 0.58);
}
.footer-contact-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-bottom: 24px;
}
.contact-item-link {
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: var(--font-body);
  font-size: 0.95rem;
  color: rgba(255, 255, 255, 0.68);
  transition: color var(--duration-base) var(--ease-out);
}
.contact-item-link:hover {
  color: var(--color-gold-500);
}
.contact-item-text {
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: var(--font-body);
  font-size: 0.95rem;
  color: rgba(255, 255, 255, 0.58);
}
.contact-icon {
  color: var(--color-gold-500);
  display: flex;
  align-items: center;
  flex-shrink: 0;
}
.footer-cta-wrapper {
  margin-top: 4px;
}
.btn-footer-cta {
  --btn-bg: var(--color-rose-50);
  --btn-color: var(--color-navy-900);
  --btn-border: rgba(var(--color-gold-500-rgb), 0.4);
  font-weight: 600;
  min-height: 48px;
  width: auto;
  display: inline-flex;
  padding: 0 20px;
  border-radius: 10px;
}
.btn-footer-cta:hover {
  --btn-bg: var(--color-white);
  border-color: var(--color-gold-500);
  box-shadow: 0 0 20px rgba(var(--color-gold-500-rgb), 0.3), 0 8px 24px rgba(0, 0, 17, 0.15);
}
.btn-footer-cta svg {
  flex-shrink: 0;
  stroke-width: 2;
  transition: transform var(--duration-base) var(--ease-out);
}
.btn-footer-cta:hover svg {
  transform: scale(1.08) rotate(4deg);
}

/* BARRA INFERIOR */
.footer-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 32px;
  padding-top: 24px;
  border-top: 1px solid rgba(203, 170, 115, 0.14);
  margin-top: clamp(48px, 6vw, 64px);
}
.footer-ethical {
  max-width: 700px;
}
.footer-ethical p {
  font-family: var(--font-body);
  font-size: 0.82rem;
  line-height: 1.55;
  color: rgba(255, 255, 255, 0.45);
  margin: 0;
  font-style: italic;
}
.footer-copyright {
  flex-shrink: 0;
  font-family: var(--font-body);
  font-size: 0.84rem;
  color: rgba(255, 255, 255, 0.45);
  text-align: right;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

/* ==========================================================================
   RESPONSIVIDADE RODAPÉ (FOOTER)
   ========================================================================== */
@media(max-width: 1040px) {
  .footer-columns {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 48px;
  }
  .em-footer {
    padding: 72px 0 36px 0;
  }
  .footer-bottom {
    flex-direction: column;
    align-items: stretch;
    gap: 20px;
    margin-top: 48px;
  }
  .footer-ethical {
    max-width: 100%;
  }
  .footer-copyright {
    text-align: left;
    align-items: flex-start;
  }
}

@media(max-width: 720px) {
  .footer-columns {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .footer-col-brand {
    align-items: center;
    text-align: center;
  }
  .footer-brand-desc {
    max-width: 100%;
  }
  .footer-crp {
    margin-left: 0;
  }
  .footer-socials {
    justify-content: center;
  }
  .footer-title {
    width: 100%;
    text-align: center;
    margin-bottom: 20px;
  }
  .footer-title:after {
    left: 50%;
    transform: translateX(-50%);
  }
  .footer-list {
    align-items: center;
  }
  .footer-contact-list {
    align-items: center;
  }
  .contact-item-link, .contact-item-text {
    justify-content: center;
  }
  .footer-cta-wrapper {
    display: flex;
    justify-content: center;
    width: 100%;
  }
  .btn-footer-cta {
    width: 100%;
    max-width: 320px;
  }
}

/* ==========================================================================
   ELEMENTOS DE PÁGINAS INTERNAS
   ========================================================================== */

/* 1. Hero das Páginas Internas */
.em-internal-hero {
  position: relative;
  padding: clamp(140px, 12vw, 172px) 0 clamp(56px, 6vw, 76px) 0;
  background: linear-gradient(180deg, var(--color-rose-50) 0%, var(--color-white) 48%, var(--color-rose-50) 100%);
  overflow: hidden;
  isolation: isolate;
  border-bottom: 1px solid rgba(203, 170, 115, 0.14);
}
.internal-hero-bg {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: 0.85;
}
.internal-hero-glow {
  position: absolute;
  width: 440px;
  height: 440px;
  right: -10vw;
  top: -10vh;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(var(--color-gold-500-rgb), 0.07) 0%, transparent 72%);
  filter: blur(50px);
  pointer-events: none;
}
.internal-hero-root-svg {
  position: absolute;
  left: -5vw;
  bottom: -4vw;
  width: min(480px, 40vw);
  height: auto;
  opacity: 0.08;
  color: var(--color-navy-900);
  pointer-events: none;
}
.internal-hero-content {
  max-width: 840px;
}
.internal-hero-content .eyebrow {
  margin-bottom: 20px;
  color: rgba(var(--color-gold-500-rgb), 0.95);
}
.internal-hero-content .section-title {
  font-size: clamp(34px, 4.4vw, 54px);
  line-height: 1.12;
  color: var(--color-navy-900);
  margin-bottom: 24px;
}
.internal-hero-content .supporting-text {
  font-family: var(--font-body);
  font-size: clamp(1.08rem, 1.25vw, 1.25rem);
  line-height: 1.7;
  color: var(--color-text-muted);
  text-wrap: balance;
}

/* 2. Estilo Sticky e Fotos Biográficas (sobre-erica.html) */
.about-detailed-grid {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: clamp(48px, 6vw, 80px);
  align-items: start;
}
.about-sticky-col {
  position: sticky;
  top: 110px;
}
.about-detailed-content {
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.about-detailed-content p {
  font-family: var(--font-body);
  font-size: 1.05rem;
  line-height: 1.72;
  color: var(--color-text-muted);
}
.principles-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
  margin-top: 48px;
}
.principle-card {
  padding: clamp(24px, 2.5vw, 36px);
  background: rgba(255, 255, 255, 0.58);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(17, 34, 80, 0.08);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-soft), var(--shadow-inset);
  transition: transform var(--duration-base) var(--ease-out), box-shadow var(--duration-base) var(--ease-out), border-color var(--duration-base) var(--ease-out);
}
.principle-card:hover {
  transform: translateY(-5px);
  border-color: rgba(var(--color-gold-500-rgb), 0.45);
  box-shadow: var(--shadow-hover);
}
.principle-card .card-title {
  margin: 18px 0 10px;
  font-family: var(--font-heading);
  font-size: 1.4rem;
  color: var(--color-navy-900);
}
.principle-card .card-text {
  font-family: var(--font-body);
  font-size: 0.95rem;
  line-height: 1.62;
  color: var(--color-text-muted);
}

/* 3. Atuação Clínica Detalhes (atuacao-clinica.html) */
.modalidade-block {
  padding: clamp(48px, 5vw, 72px) clamp(24px, 3.5vw, 48px);
  background: rgba(255, 255, 255, 0.6);
  backdrop-filter: blur(14px);
  border: 1px solid rgba(17, 34, 80, 0.08);
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow-soft), var(--shadow-inset);
  margin-bottom: 40px;
  transition: transform var(--duration-base) var(--ease-out), border-color var(--duration-base) var(--ease-out);
}
.modalidade-block:hover {
  border-color: rgba(var(--color-gold-500-rgb), 0.35);
  transform: translateY(-2px);
}
.modalidade-block-header {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-bottom: 24px;
}
.modalidade-block-header .card-icon {
  margin-bottom: 0;
  flex-shrink: 0;
}
.modalidade-block-header .h2 {
  font-family: var(--font-heading);
  font-size: clamp(1.6rem, 2.5vw, 2.2rem);
  color: var(--color-navy-900);
  margin: 0;
}
.modalidade-block-body {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 40px;
  align-items: start;
}
.modalidade-desc-text {
  font-family: var(--font-body);
  font-size: 1.05rem;
  line-height: 1.7;
  color: var(--color-text-muted);
}
.modalidade-checklist {
  background: rgba(244, 238, 236, 0.4);
  padding: 24px;
  border-radius: var(--radius-md);
  border: 1px dashed rgba(203, 170, 115, 0.3);
}
.modalidade-checklist-title {
  font-family: var(--font-heading);
  font-size: 1.1rem;
  color: var(--color-navy-900);
  margin-bottom: 16px;
}
.modalidade-checklist-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 12px;
}
.modalidade-checklist-list li {
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: var(--font-body);
  font-size: 0.94rem;
  color: var(--color-text-muted);
}
.modalidade-checklist-list li:before {
  content: "✦";
  color: var(--color-gold-500);
  font-size: 0.72rem;
  flex-shrink: 0;
}

/* 4. Timeline do Acolhimento (como-funciona.html) */
.em-timeline {
  display: flex;
  flex-direction: column;
  gap: 48px;
  position: relative;
  margin-top: 56px;
}
.em-timeline:before {
  content: "";
  position: absolute;
  left: 24px;
  top: 8px;
  bottom: 8px;
  width: 1px;
  background: linear-gradient(180deg, rgba(203,170,115,0) 0%, rgba(203,170,115,0.4) 15%, rgba(203,170,115,0.4) 85%, rgba(203,170,115,0) 100%);
  z-index: 1;
}
.timeline-step {
  display: flex;
  gap: 28px;
  position: relative;
  z-index: 2;
}
.timeline-badge {
  flex-shrink: 0;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: var(--color-white);
  border: 1px solid var(--color-gold-500);
  color: var(--color-gold-500);
  font-family: var(--font-heading);
  font-size: 1.15rem;
  display: grid;
  place-items: center;
  box-shadow: var(--shadow-soft), var(--shadow-inset);
  transition: transform var(--duration-base) var(--ease-out), background var(--duration-base) var(--ease-out), color var(--duration-base) var(--ease-out);
}
.timeline-step:hover .timeline-badge {
  transform: scale(1.08) rotate(360deg);
  background: var(--color-gold-500);
  color: var(--color-white);
}
.timeline-content {
  background: rgba(255, 255, 255, 0.58);
  backdrop-filter: blur(8px);
  padding: 24px 32px;
  border-radius: var(--radius-md);
  border: 1px solid rgba(17, 34, 80, 0.06);
  box-shadow: var(--shadow-soft), var(--shadow-inset);
  flex-grow: 1;
  transition: border-color var(--duration-base) var(--ease-out);
}
.timeline-step:hover .timeline-content {
  border-color: rgba(var(--color-gold-500-rgb), 0.3);
}
.timeline-title {
  font-family: var(--font-heading);
  font-size: 1.32rem;
  color: var(--color-navy-900);
  margin-bottom: 8px;
}
.timeline-text {
  font-family: var(--font-body);
  font-size: 0.98rem;
  line-height: 1.62;
  color: var(--color-text-muted);
}
.como-funciona-ethical {
  background: rgba(17, 34, 80, 0.02);
  border-left: 3px solid var(--color-gold-500);
  padding: 28px 36px;
  border-radius: 0 var(--radius-md) var(--radius-md) 0;
  max-width: 820px;
  margin: 64px auto 0 auto;
}
.como-funciona-ethical .ethical-text {
  font-family: var(--font-body);
  font-size: 1.05rem;
  line-height: 1.68;
  font-style: italic;
  color: var(--color-navy-900);
}

/* 5. Filtros e Categorias de Conteúdos (conteudos.html) */
.conteudos-categories-bar {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  margin-bottom: 48px;
}
.category-filter-btn {
  background: rgba(255, 255, 255, 0.6);
  border: 1px solid rgba(17, 34, 80, 0.08);
  border-radius: var(--radius-full);
  padding: 8px 20px;
  font-family: var(--font-body);
  font-size: 0.88rem;
  color: var(--color-text-muted);
  cursor: pointer;
  box-shadow: var(--shadow-inset);
  transition: all var(--duration-base) var(--ease-out);
}
.category-filter-btn:hover, .category-filter-btn.active {
  background: var(--color-gold-500);
  border-color: var(--color-gold-500);
  color: var(--color-white);
  transform: translateY(-1.5px);
  box-shadow: 0 8px 20px rgba(var(--color-gold-500-rgb), 0.2);
}

/* 6. Layout Central de Contato (contato.html) */
.contato-layout-grid {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: clamp(48px, 6vw, 80px);
  align-items: start;
}
.contato-info-panel {
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.contato-info-card {
  background: rgba(255, 255, 255, 0.58);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(17, 34, 80, 0.08);
  border-radius: var(--radius-xl);
  padding: clamp(24px, 3.2vw, 42px);
  box-shadow: var(--shadow-card), var(--shadow-inset);
}
.contato-info-card .footer-crp {
  margin-left: 0;
  margin-bottom: 24px;
}
.contato-list-block {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.contato-list-block li {
  display: flex;
  align-items: center;
  gap: 14px;
  font-family: var(--font-body);
  font-size: 1.02rem;
  color: var(--color-text-muted);
}
.contato-list-block li a:hover {
  color: var(--color-gold-500);
}
.contato-list-block .contact-icon {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(var(--color-gold-500-rgb), 0.06);
  border: 1px solid rgba(var(--color-gold-500-rgb), 0.22);
  display: grid;
  place-items: center;
  color: var(--color-gold-500);
}
.contato-map-box {
  margin-top: 24px;
  background: rgba(255, 255, 255, 0.4);
  border: 1px solid rgba(17, 34, 80, 0.06);
  border-radius: var(--radius-lg);
  padding: 16px;
  box-shadow: var(--shadow-soft);
}
.em-map-placeholder {
  height: 180px;
  background: radial-gradient(circle at 50% 50%, rgba(var(--color-gold-500-rgb), 0.07) 0%, rgba(var(--color-navy-900-rgb), 0.03) 100%);
  border: 1px dashed rgba(203, 170, 115, 0.3);
  border-radius: var(--radius-md);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  text-align: center;
}
.em-map-placeholder .pin-icon {
  color: var(--color-gold-500);
  animation: em-float 3s var(--ease-soft) infinite alternate;
}
.em-map-placeholder span {
  font-family: var(--font-body);
  font-size: 0.88rem;
  color: var(--color-text-soft);
}
.contato-form-card {
  background: rgba(255, 255, 255, 0.65);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(203, 170, 115, 0.18);
  border-radius: var(--radius-xl);
  padding: clamp(32px, 4vw, 54px) clamp(24px, 3.5vw, 42px);
  box-shadow: 0 24px 64px rgba(17, 34, 80, 0.06), var(--shadow-inset);
}
.form-secure-microcopy {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-body);
  font-size: 0.84rem;
  color: var(--color-text-soft);
  margin-top: 14px;
}
.form-secure-microcopy svg {
  color: var(--color-success);
  flex-shrink: 0;
}
.contato-ethical-notice {
  margin-top: 24px;
  padding: 16px 20px;
  background: rgba(244, 238, 236, 0.4);
  border-radius: var(--radius-md);
  border-left: 2px solid var(--color-gold-500);
}
.contato-ethical-notice p {
  font-family: var(--font-body);
  font-size: 0.84rem;
  line-height: 1.55;
  color: var(--color-text-muted);
  margin: 0;
  font-style: italic;
}

/* ==========================================================================
   RESPONSIVIDADE DAS PÁGINAS INTERNAS
   ========================================================================== */
@media(max-width: 1040px) {
  .about-detailed-grid, .contato-layout-grid {
    grid-template-columns: 1fr;
    gap: 48px;
  }
  .about-sticky-col {
    position: relative;
    top: auto;
  }
  .modalidade-block-body {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .principles-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media(max-width: 720px) {
  .principles-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .timeline-step {
    gap: 16px;
  }
  .timeline-badge {
    width: 40px;
    height: 40px;
    font-size: 0.95rem;
  }
  .em-timeline:before {
    left: 20px;
  }
  .timeline-content {
    padding: 18px 24px;
  }
  .contato-form-card {
    padding: 32px 20px;
  }
}

/* ==========================================================================
   REFINAMENTOS EDITORIAIS (SOBRE ÉRICA)
   ========================================================================== */
.bio-section {
  position: relative;
  border-bottom: 1px dashed rgba(203, 170, 115, 0.22);
  padding-bottom: 40px;
  margin-bottom: 40px;
}
.bio-section:last-child {
  border-bottom: 0;
  padding-bottom: 0;
  margin-bottom: 0;
}
.bio-drop-cap {
  float: left;
  font-family: var(--font-heading);
  font-size: clamp(3rem, 5vw, 4.4rem);
  line-height: 0.72;
  padding-top: 6px;
  padding-right: 12px;
  padding-left: 2px;
  color: var(--color-gold-500);
  font-weight: 700;
}
.about-pull-quote {
  position: relative;
  margin: 36px 0;
  padding: 24px 32px;
  background: rgba(244, 238, 236, 0.3);
  border-left: 3px solid var(--color-gold-500);
  border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
}
.about-pull-quote .pull-quote-text {
  font-family: var(--font-heading);
  font-size: clamp(1.1rem, 1.35vw, 1.35rem);
  line-height: 1.6;
  font-style: italic;
  color: var(--color-navy-900);
  margin: 0;
}
.about-highlights-list {
  margin-top: 24px;
  display: grid;
  gap: 16px;
}
.highlight-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
.highlight-item .highlight-icon {
  color: var(--color-gold-500);
  font-size: 0.95rem;
  line-height: 1;
  padding-top: 3px;
}
.highlight-item .highlight-text {
  font-family: var(--font-body);
  font-size: 1rem;
  line-height: 1.5;
  color: var(--color-text-muted);
}

/* ==========================================================================
   CORREÇÃO DO CABEÇALHO E ÍCONES (SOBRE ÉRICA)
   ========================================================================== */
.section-header-centered {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  max-width: 680px;
  margin: 0 auto clamp(40px, 5vw, 56px) auto;
}
.section-header-centered .eyebrow {
  margin-bottom: 12px;
  justify-content: center;
}
.section-header-centered .eyebrow::before {
  display: none !important;
}
.section-header-centered .gold-line {
  margin: 18px auto;
}
.section-header-centered .body-lg {
  color: var(--color-text-muted);
}

.principle-card .card-icon svg {
  width: 20px;
  height: 20px;
  stroke-width: 1.5;
  transition: transform var(--duration-base) var(--ease-out);
}
.principle-card:hover .card-icon {
  transform: scale(1.08) rotate(2deg);
  background: rgba(var(--color-gold-500-rgb), 0.12);
  border-color: rgba(var(--color-gold-500-rgb), 0.68);
}

/* ==========================================================================
   ESTRUTURA E CARTÃO DA ABORDAGEM CLÍNICA
   ========================================================================== */
.abordagem-grid {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: clamp(48px, 6vw, 80px);
  align-items: center;
}
.about-highlights-card {
  padding: clamp(24px, 3.5vw, 42px);
  background: rgba(255, 255, 255, 0.54);
  border: 1px solid rgba(203, 170, 115, 0.18);
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow-card), var(--shadow-inset);
  backdrop-filter: blur(12px);
  transition: transform var(--duration-base) var(--ease-out), border-color var(--duration-base) var(--ease-out), box-shadow var(--duration-base) var(--ease-out);
}
.about-highlights-card:hover {
  transform: translateY(-4px);
  border-color: rgba(var(--color-gold-500-rgb), 0.45);
  box-shadow: var(--shadow-hover);
}
.about-highlights-card .highlights-title {
  font-family: var(--font-heading);
  font-size: 1.35rem;
  color: var(--color-navy-900);
  margin-bottom: 20px;
}
@media(max-width: 1040px) {
  .abordagem-grid {
    grid-template-columns: 1fr;
    gap: 36px;
  }
}

/* ==========================================================================
   ESTADO DO MENU ABERTO (FULL SCREEN OVERLAY)
   ========================================================================== */
@media (max-width: 1040px) {
  .navbar.menu-is-open {
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    margin: 0 !important;
    border-radius: 0 !important;
    border: none !important;
    background: rgba(244, 238, 236, 0.98) !important;
    backdrop-filter: blur(24px) !important;
    box-shadow: none !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    padding: 24px 24px 0 24px !important;
    z-index: 1000 !important;
    transform: none !important;
    animation: none !important;
  }
  
  .navbar.menu-is-open .brand {
    position: relative !important;
    z-index: 1001 !important;
  }
  
  .navbar.menu-is-open .nav-mobile-toggle {
    position: relative !important;
    z-index: 1001 !important;
    display: block !important;
  }
  
  .navbar.menu-is-open .nav-links.is-open {
    position: absolute !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important; /* Começa do topo, removendo o espaço vazio */
    gap: 22px !important; /* Espaço entre links mais compacto e chique */
    padding: 104px 24px 40px 24px !important; /* Distância perfeita e refinada para o cabeçalho */
    background: transparent !important;
    backdrop-filter: none !important;
    z-index: 999 !important;
  }
  
  .navbar.menu-is-open .nav-links.is-open a {
    font-size: clamp(1.2rem, 5vw, 1.5rem) !important;
    font-weight: 500 !important;
    color: var(--color-navy-900) !important;
    transition: color var(--duration-fast) var(--ease-out) !important;
  }
  
  .navbar.menu-is-open .nav-links.is-open .btn-nav {
    margin-top: 16px !important;
    width: 100% !important;
    max-width: 280px !important;
    color: var(--color-white) !important;
    background: var(--color-navy-900) !important;
    border: 1px solid rgba(var(--color-gold-500-rgb), 0.35) !important;
  }
  .navbar.menu-is-open .nav-links.is-open .btn-nav:hover {
    border-color: rgba(var(--color-gold-500-rgb), 0.85) !important;
    box-shadow: 0 0 12px rgba(var(--color-gold-500-rgb), 0.25) !important;
  }
}

/* ==========================================================================
   HERO MOBILE INTEGRADA (FIEL À REFERÊNCIA)
   ========================================================================== */
.em-hero-mobile {
  display: none;
}

@media (max-width: 1040px) {
  /* Oculta hero desktop e exibe mobile */
  .em-hero-desktop {
    display: none !important;
  }
  
  .em-hero-mobile {
    display: block !important;
    position: relative;
    background: #F4EEEC;
    padding-top: 120px; /* Espaço para a navbar flutuante */
    overflow: hidden;
    isolation: isolate;
  }
  
  /* Background e Elementos Botânicos */
  .em-hero-mobile-bg {
    position: absolute;
    inset: 0;
    z-index: -2;
    pointer-events: none;
  }
  
  .botanical-decor {
    position: absolute;
    width: 220px;
    height: auto;
    opacity: 0.13;
    color: var(--color-gold-500);
  }
  
  .botanical-decor.left {
    left: -80px;
    top: 5%;
    transform: rotate(20deg) scaleX(-1);
  }
  
  .botanical-decor.right {
    right: -80px;
    top: 30%;
    transform: rotate(-15deg);
  }
  
  .em-hero-mobile-container {
    padding: 24px 20px 48px;
    display: flex;
    flex-direction: column;
    gap: 28px;
  }
  
  /* Eyebrow */
  .em-hero-mobile-eyebrow {
    display: block;
    font-family: var(--font-body);
    font-size: 0.82rem;
    font-weight: 500;
    color: var(--color-gold-500);
    letter-spacing: 0.12em;
    text-transform: uppercase;
    margin-bottom: 12px;
    text-align: left;
  }
  
  /* Título */
  .em-hero-mobile-title {
    font-family: var(--font-heading);
    font-size: clamp(34px, 9vw, 44px);
    line-height: 1.14;
    color: var(--color-navy-900);
    letter-spacing: -0.02em;
    margin-bottom: 14px;
    text-align: left;
    text-wrap: balance;
  }
  
  .em-hero-mobile-title .text-gold {
    color: var(--color-gold-500);
  }
  
  /* Divisor Dourado */
  .em-hero-mobile-divider {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 14px 0 20px;
    max-width: 100%;
  }
  
  .em-hero-mobile-divider .line {
    height: 1px;
    flex: 1;
    background: linear-gradient(90deg, transparent, rgba(var(--color-gold-500-rgb), 0.5), transparent);
  }
  
  .em-hero-mobile-divider .divider-icon {
    width: 18px;
    height: 18px;
    color: var(--color-gold-500);
  }
  
  /* Layout Integrado: Parágrafo e Arco em Coluna */
  .em-hero-mobile-body-wrapper {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 16px;
    align-items: flex-start;
  }
  
  /* Portal Orgânico (Arco da Érica) - Agora no Topo da Seção, Amplo e Imponente */
  .em-hero-mobile-portal {
    position: relative;
    width: 100%;
    max-width: 360px; /* Sensivelmente maior para destaque majestoso */
    aspect-ratio: 0.76;
    margin: 0 0 20px 0;
    z-index: 2;
  }
  
  .portal-arch {
    width: 100%;
    height: 100%;
    border-radius: 50% 50% 0 0; /* Arco romano semicircular dinâmico perfeito */
    background: #EFE8E5;
    overflow: hidden;
    border: 1.5px solid rgba(var(--color-gold-500-rgb), 0.3);
    box-shadow: 0 20px 48px rgba(17, 34, 80, 0.06);
  }
  
  .portal-arch img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
    transform: scaleX(-1); /* Olhando elegantemente em direção à leitura */
    filter: brightness(1.03) contrast(1.02);
  }

  .em-hero-mobile-lead {
    font-family: var(--font-body);
    font-size: 0.96rem;
    line-height: 1.65;
    color: rgba(17, 34, 80, 0.75);
    max-width: 100%; /* Largura completa para leitura confortável */
    text-align: left;
    z-index: 2;
    position: relative;
  }
  
  /* Botões Empilhados */
  .em-hero-mobile-actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
    position: relative;
    z-index: 3; /* Sobrepõe elegantemente à base do arco */
    margin-top: 24px;
    width: 100%;
  }
  
  .btn-mobile-hero {
    width: 100%;
    height: 52px;
    border-radius: 14px;
    font-size: 0.96rem;
    font-weight: 500;
  }
  
  /* Efeito de Glow Discreto no Botão Navy */
  .btn-mobile-hero.btn-primary.glow-effect {
    box-shadow: 0 8px 24px rgba(17, 34, 80, 0.2), 0 0 16px rgba(var(--color-gold-500-rgb), 0.15);
    background: #112250 !important;
    color: #FFF !important;
    border-color: rgba(var(--color-gold-500-rgb), 0.45) !important;
  }
  
  .btn-mobile-hero.btn-primary.glow-effect:hover,
  .btn-mobile-hero.btn-primary.glow-effect:active {
    box-shadow: 0 12px 28px rgba(17, 34, 80, 0.3), 0 0 20px rgba(var(--color-gold-500-rgb), 0.25) !important;
  }
  
  .btn-mobile-hero.btn-primary.glow-effect .btn-icon {
    stroke: var(--color-gold-500) !important;
  }
  
  /* Estilo Botão Secundário */
  .btn-mobile-hero.btn-secondary {
    background: #F4EEEC !important;
    border: 1px solid var(--color-gold-500) !important;
    color: var(--color-navy-900) !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
  }
  
  .btn-mobile-hero.btn-secondary .btn-icon {
    color: var(--color-gold-500) !important;
  }
  
  /* Badges Grid 2x2 */
  .em-hero-mobile-badges-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    width: 100%;
    z-index: 2;
    margin-top: 12px;
  }
  
  .em-mobile-badge-card {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    padding: 16px 14px;
    background: #FFFFFF;
    border: 1px solid rgba(var(--color-navy-900-rgb), 0.04);
    border-radius: 16px;
    box-shadow: 0 8px 24px rgba(17, 34, 80, 0.02), inset 0 1px 0 rgba(255,255,255,0.8);
    transition: transform var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);
  }
  
  .em-mobile-badge-card:active {
    transform: scale(0.98);
    box-shadow: 0 4px 12px rgba(17, 34, 80, 0.04);
  }
  
  .card-icon-wrapper {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: rgba(203, 170, 115, 0.1);
    border: 1px solid rgba(203, 170, 115, 0.25);
    display: grid;
    place-items: center;
    color: var(--color-gold-500);
  }
  
  .em-mobile-badge-card span {
    font-family: var(--font-body);
    font-size: 0.82rem;
    font-weight: 500;
    line-height: 1.25;
    color: var(--color-navy-900);
    text-align: left;
  }
  
  /* Curva Azul Inferior e Selo */
  .em-hero-mobile-footer-curve {
    position: relative;
    width: 100%;
    height: 90px;
    margin-top: 36px;
    background: transparent;
  }
  
  .curve-svg-wrapper {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }
  
  .curve-svg-wrapper svg {
    width: 100%;
    height: 100%;
    display: block;
  }
  
  /* Selo da Árvore */
  .em-hero-mobile-seal {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -64%);
    width: 62px;
    height: 62px;
    z-index: 10;
  }
  
  .seal-inner {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: #112250;
    border: 2px solid var(--color-gold-500);
    display: grid;
    place-items: center;
    box-shadow: 0 8px 24px rgba(17, 34, 80, 0.3), 0 0 16px rgba(var(--color-gold-500-rgb), 0.2);
    padding: 8px;
    overflow: hidden;
  }
  
  .seal-inner img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: drop-shadow(0 2px 4px rgba(0,0,0,0.1));
  }
  
  /* Brilhos / Partículas de Luz Douradas na Linha */
  .gold-sparkle {
    position: absolute;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #FFFFFF;
    box-shadow: 0 0 8px #FFF, 0 0 14px var(--color-gold-500);
    animation: em-pulse-glow 2s infinite ease-in-out;
  }
  
  .sparkle-1 {
    left: 20%;
    top: 32px;
    animation-delay: 0.3s;
  }
  
  .sparkle-2 {
    right: 20%;
    top: 32px;
    animation-delay: 0.8s;
  }
}

/* ==========================================================================
   PADRONIZAÇÃO TIPOGRÁFICA DESKTOP (UNIFICAÇÃO DO DESIGN SYSTEM)
   ========================================================================== */
@media (min-width: 1041px) {
  :root {
    --font-heading: "PT Serif", Georgia, "Times New Roman", serif;
    --font-body: "Didact Gothic", Inter, Arial, sans-serif;

    /* Escala de Tamanhos Desktop */
    --fs-display: clamp(60px, 4.6vw, 82px);
    --fs-h1: clamp(52px, 4vw, 72px);
    --fs-h2: clamp(40px, 3vw, 56px);
    --fs-h3: clamp(28px, 2vw, 36px);
    --fs-h4: 24px;
    --fs-h5: 20px;
    --fs-h6: 14px;

    --fs-body-lg: 20px;
    --fs-body: 18px;
    --fs-body-sm: 16px;
    --fs-caption: 14px;
    --fs-label: 13px;
    --fs-menu: 15px;
    --fs-button: 15px;
    --fs-badge: 14px;

    /* Alturas de Linha (Line-height) */
    --lh-display: 1.05;
    --lh-h1: 1.08;
    --lh-h2: 1.12;
    --lh-h3: 1.18;
    --lh-h4: 1.25;
    --lh-body-lg: 1.65;
    --lh-body: 1.7;
    --lh-body-sm: 1.6;
  }

  /* Aplicação dos Tokens nos elementos e classes */
  .display, .text-display, .hero-title {
    font-family: var(--font-heading) !important;
    font-size: var(--fs-display) !important;
    line-height: var(--lh-display) !important;
    font-weight: 400 !important;
    letter-spacing: -0.035em !important;
  }

  h1, .h1, .text-h1 {
    font-family: var(--font-heading) !important;
    font-size: var(--fs-h1) !important;
    line-height: var(--lh-h1) !important;
    font-weight: 400 !important;
    letter-spacing: -0.035em !important;
  }

  h2, .h2, .text-h2, .section-title {
    font-family: var(--font-heading) !important;
    font-size: var(--fs-h2) !important;
    line-height: var(--lh-h2) !important;
    font-weight: 400 !important;
    letter-spacing: -0.03em !important;
  }

  h3, .h3, .text-h3 {
    font-family: var(--font-heading) !important;
    font-size: var(--fs-h3) !important;
    line-height: var(--lh-h3) !important;
    font-weight: 400 !important;
    letter-spacing: -0.025em !important;
  }

  h4, .h4, .text-h4, .card-title {
    font-family: var(--font-heading) !important;
    font-size: var(--fs-h4) !important;
    line-height: var(--lh-h4) !important;
    font-weight: 400 !important;
    letter-spacing: -0.015em !important;
  }

  h5, .h5, .text-h5 {
    font-family: var(--font-heading) !important;
    font-size: var(--fs-h5) !important;
    line-height: 1.3 !important;
    font-weight: 400 !important;
  }

  h6, .h6, .text-h6 {
    font-family: var(--font-body) !important;
    font-size: var(--fs-h6) !important;
    line-height: 1.2 !important;
    font-weight: 400 !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
  }

  p, .body, .text-body, .card-text, .card-description {
    font-family: var(--font-body) !important;
    font-size: var(--fs-body) !important;
    line-height: var(--lh-body) !important;
    font-weight: 400 !important;
    letter-spacing: 0.005em !important;
  }

  .body-lg, .text-body-lg, .supporting-text, .supporting-text.body-lg {
    font-family: var(--font-body) !important;
    font-size: var(--fs-body-lg) !important;
    line-height: var(--lh-body-lg) !important;
    font-weight: 400 !important;
    letter-spacing: 0.005em !important;
  }

  .body-sm, .text-body-sm {
    font-family: var(--font-body) !important;
    font-size: var(--fs-body-sm) !important;
    line-height: var(--lh-body-sm) !important;
    font-weight: 400 !important;
  }

  .caption, .text-caption, .helper {
    font-family: var(--font-body) !important;
    font-size: var(--fs-caption) !important;
    line-height: 1.45 !important;
    font-weight: 400 !important;
    letter-spacing: 0.03em !important;
  }

  .eyebrow, .label, .text-label {
    font-family: var(--font-body) !important;
    font-size: var(--fs-label) !important;
    line-height: 1.2 !important;
    font-weight: 400 !important;
    letter-spacing: 0.16em !important;
    text-transform: uppercase !important;
  }

  /* Menus e Navegação */
  .nav-links a {
    font-family: var(--font-body) !important;
    font-size: var(--fs-menu) !important;
    line-height: 1.2 !important;
    font-weight: 400 !important;
    letter-spacing: 0.02em !important;
  }

  /* Botões */
  .btn, .em-btn, .btn-nav, .btn-mobile-hero {
    font-family: var(--font-body) !important;
    font-size: var(--fs-button) !important;
    line-height: 1.2 !important;
    font-weight: 400 !important;
    letter-spacing: 0.03em !important;
  }

  /* Badges */
  .badge, .em-badge {
    font-family: var(--font-body) !important;
    font-size: var(--fs-badge) !important;
    line-height: 1.3 !important;
    font-weight: 400 !important;
  }

  /* Formulários */
  .form-field label {
    font-size: var(--fs-label) !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
  }

  .input, .em-input, .form-field input, .form-field textarea, .form-field select {
    font-size: 16px !important;
    line-height: 1.4 !important;
  }
}

/* ==========================================================================
   PÁGINAS INTERNAS DOS ARTIGOS (TEMPLATE EDITORIAL PREMIUM)
   ========================================================================== */

/* Hero do Artigo */
.em-article-hero {
  position: relative;
  padding: clamp(140px, 12vw, 180px) 0 clamp(64px, 6vw, 96px);
  background: linear-gradient(rgba(17, 34, 80, 0.015) 1px, transparent 1px),
              linear-gradient(90deg, rgba(17, 34, 80, 0.015) 1px, transparent 1px),
              var(--gradient-hero);
  background-size: 38px 38px, 38px 38px, auto;
  border-bottom: 1px solid rgba(17, 34, 80, 0.06);
  overflow: hidden;
}

.em-article-hero .internal-hero-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 1;
}

.em-article-hero .container {
  position: relative;
  z-index: 2;
}

.em-article-hero .eyebrow {
  color: var(--color-gold-500);
  margin-bottom: 18px;
  font-weight: 500;
}

.em-article-hero .article-title {
  font-family: var(--font-heading);
  color: var(--color-navy-900);
  font-size: clamp(30px, 3.8vw, 48px);
  line-height: 1.15;
  margin-bottom: 24px;
  max-width: 920px;
  letter-spacing: -0.03em;
}

.em-article-hero .article-lead {
  font-family: var(--font-body);
  font-size: clamp(1.08rem, 1.25vw, 1.28rem);
  line-height: 1.65;
  color: rgba(17, 34, 80, 0.75);
  max-width: 820px;
  margin-bottom: 32px;
}

.em-article-hero .article-meta-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 20px;
  padding-top: 24px;
  border-top: 1px solid rgba(17, 34, 80, 0.08);
  max-width: 920px;
}

.em-article-hero .article-meta-info {
  font-family: var(--font-body);
  font-size: 0.94rem;
  color: rgba(17, 34, 80, 0.54);
  letter-spacing: 0.02em;
}

.btn-back-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-body);
  font-size: 0.94rem;
  font-weight: 500;
  color: rgba(17, 34, 80, 0.74);
  transition: all var(--duration-base) var(--ease-out);
}

.btn-back-link:hover {
  color: var(--color-gold-500);
  transform: translateX(-4px);
}

/* Container de Leitura do Artigo */
.em-article-section {
  padding: clamp(64px, 8vw, 112px) 0;
  background: var(--color-rose-50);
  position: relative;
}

.article-container {
  max-width: 820px;
  margin: 0 auto;
}

/* Corpo de Texto do Artigo */
.article-body-content {
  font-family: var(--font-body);
  font-size: 19px;
  line-height: 1.8;
  color: rgba(17, 34, 80, 0.75);
}

.article-body-content p {
  font-family: var(--font-body) !important;
  font-size: 19px !important;
  line-height: 1.8 !important;
  color: rgba(17, 34, 80, 0.75) !important;
  margin-bottom: 24px;
  letter-spacing: 0.005em !important;
}

.article-body-content p:last-child {
  margin-bottom: 0;
}

.article-body-content h2,
.article-body-content h3 {
  font-family: var(--font-heading) !important;
  color: var(--color-navy-900) !important;
  font-weight: 400 !important;
  letter-spacing: -0.025em !important;
  margin: 48px 0 20px;
}

.article-body-content h2 {
  font-size: clamp(24px, 2.2vw, 32px) !important;
  line-height: 1.25 !important;
}

.article-body-content h3 {
  font-size: clamp(20px, 1.8vw, 26px) !important;
  line-height: 1.3 !important;
}

/* Bloco de Citação / Reflexão */
.article-quote-block {
  margin: 48px 0;
  padding: 36px 40px;
  background: var(--color-surface);
  border-left: 3px solid var(--color-accent);
  border-radius: 0 var(--radius-md) var(--radius-md) 0;
  box-shadow: var(--shadow-soft);
  backdrop-filter: blur(12px);
  position: relative;
}

.article-quote-block .quote-icon {
  position: absolute;
  top: 14px;
  right: 28px;
  font-size: 5rem;
  font-family: var(--font-heading);
  color: var(--color-gold-500);
  opacity: 0.08;
  line-height: 1;
  pointer-events: none;
}

.article-quote-block p {
  font-family: var(--font-heading) !important;
  font-size: clamp(1.2rem, 1.4vw, 1.4rem) !important;
  line-height: 1.6 !important;
  font-style: italic !important;
  color: var(--color-navy-900) !important;
  margin: 0 !important;
}

/* CTA Final de Contato */
.article-cta-block {
  margin-top: clamp(64px, 8vw, 96px);
  padding: clamp(32px, 5vw, 56px) clamp(20px, 4vw, 48px);
  background: var(--gradient-card);
  border: 1px solid rgba(17, 34, 80, 0.10);
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow-card), var(--shadow-inset);
  text-align: center;
  position: relative;
  overflow: hidden;
}

.article-cta-block:before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 50% 50%, rgba(203, 170, 115, 0.08), transparent 70%);
  pointer-events: none;
}

.article-cta-block h3 {
  font-family: var(--font-heading);
  font-size: clamp(1.6rem, 2.2vw, 2.1rem);
  line-height: 1.22;
  color: var(--color-navy-900);
  margin-bottom: 20px;
  letter-spacing: -0.03em;
}

.article-cta-block p {
  font-family: var(--font-body);
  font-size: 1.05rem;
  line-height: 1.68;
  color: var(--color-text-muted);
  max-width: 680px;
  margin: 0 auto 32px;
}

.article-cta-actions {
  display: flex;
  justify-content: center;
  gap: 16px;
  flex-wrap: wrap;
}

/* Artigos Relacionados */
.related-articles-section {
  padding: clamp(64px, 8vw, 96px) 0;
  border-top: 1px solid rgba(17, 34, 80, 0.06);
  background: var(--color-rose-50);
}

.related-articles-title {
  font-family: var(--font-heading);
  font-size: clamp(24px, 2.5vw, 36px);
  color: var(--color-navy-900);
  margin-bottom: clamp(32px, 4vw, 48px);
  text-align: center;
  letter-spacing: -0.02em;
}

/* Responsividade específica para artigos */
@media (max-width: 720px) {
  .article-body-content {
    font-size: 17px;
    line-height: 1.75;
  }
  .article-body-content p {
    font-size: 17px !important;
    line-height: 1.75 !important;
  }
  .article-quote-block {
    padding: 24px 28px;
  }
  .article-cta-actions .btn {
    width: 100%;
  }
}

/* LAYOUT DE GRID COM SIDEBAR LATERAL NOS ARTIGOS */
.article-layout-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 48px;
}

@media (min-width: 1024px) {
  .article-layout-grid {
    grid-template-columns: minmax(0, 800px) 290px;
    gap: 64px;
    align-items: start;
  }
}

.article-main-content {
  width: 100%;
}

.article-sidebar {
  width: 100%;
}

.sidebar-sticky-wrapper {
  position: sticky;
  top: 120px; /* Alinhado ao topo descontando a navbar fixa */
  background: var(--color-surface);
  border: 1px solid rgba(17, 34, 80, 0.08);
  border-radius: var(--radius-lg);
  padding: 32px 26px;
  box-shadow: var(--shadow-soft);
  backdrop-filter: blur(12px);
}

.sidebar-title {
  font-family: var(--font-heading);
  font-size: 1.28rem;
  color: var(--color-navy-900);
  margin-bottom: 12px;
  letter-spacing: -0.02em;
  font-weight: 400;
}

.sidebar-divider {
  height: 1px;
  background: var(--gradient-gold-line);
  margin-bottom: 24px;
}

.sidebar-recent-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.sidebar-item {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding-bottom: 16px;
  border-bottom: 1px solid rgba(17, 34, 80, 0.06);
}

.sidebar-item:last-child {
  padding-bottom: 0;
  border-bottom: none;
}

.sidebar-item-category {
  font-family: var(--font-body);
  font-size: 0.74rem;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--color-gold-500);
  font-weight: 500;
}

.sidebar-item-link {
  font-family: var(--font-body);
  font-size: 0.96rem;
  line-height: 1.45;
  color: rgba(17, 34, 80, 0.82);
  font-weight: 500;
  transition: all var(--duration-base) var(--ease-out);
}

.sidebar-item-link:hover {
  color: var(--color-navy-900);
  padding-left: 4px; /* Pequena micro-animação ao passar o mouse */
}
