
/* Agostinho Studio — Integração V1.0. As seções 01 a 06 preservam estilos isolados. */
html {scroll-behavior:smooth}
body {margin:0;min-width:320px;overflow-x:clip}
.studio-stage {position:relative;width:100%;isolation:isolate}
.skip-link{position:fixed;z-index:100;top:-100px;left:12px;background:#F6ECDE;color:#14241e;padding:12px 18px;border-radius:4px}
.skip-link:focus{top:10px}
/* Escopo especial: esta integração tem 1 único cabeçalho, o da primeira seção. */

/* ============= SECTION 01 ============= */
/* Protótipo desktop da Seção 01 — Agostinho Studio V1.1.
 * Referência visual: composição 2048 × 1152, aprovada em 16/10/2026.
 * Tipos: Georgia Regular / Avenir Next LT Pro Regular.
 * Avenir deve ser servida pelo Projeto Web da Adobe Fonts (inserir kit no HTML).
 */
:root {
  --cream: #f6ecde;
  --green: #2b4232;
  --header: #14241e;
  --amber: #e7800a;
  --text: #f5f0e9;
  --serif: Georgia, 'Times New Roman', serif;
  --sans: 'Avenir Next LT Pro', 'Avenir Next', Avenir, Arial, sans-serif;
  --header-height: clamp(74px, 5.17578125vw, 106px);
}
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin:0; background: #100a05; color: var(--text); font-family:var(--sans); }
button { font:inherit; }
button:focus-visible { outline:2px solid var(--cream); outline-offset:3px; }
.site-header {
  position: fixed;
  inset: 0 0 auto;
  height:var(--header-height);
  background:var(--header);
  z-index:20;
  isolation:isolate;
  box-shadow: 0 1px 0 rgba(242,217,174,.14);
}
.site-header__approved-art { display:block; width:100%; height:100%; object-fit:fill; }
.site-header__mobile-brand { display:none; }
.site-header__actions {
  position:absolute;
  top:50%; right:3.35%; transform:translateY(-50%);
  display:flex; align-items:center; gap:clamp(17px, 1.45vw, 30px);
}
.language-switch { display:flex; gap:6px; align-items:center; }
.language-switch__option {
  display:grid; place-items:center;
  width:clamp(35px, 2.95vw, 60px); height:clamp(33px, 2.65vw, 54px);
  border:1px solid rgba(246,236,222,.65); border-radius:6px;
  background: #f6f0e7; color:#2f342f; cursor:pointer;
  font-size:clamp(9px, .6vw, 12px); letter-spacing:.055em;
}
.language-switch__option.is-active { background:linear-gradient(140deg, #284a30, #14271b); color:white; border-color:#f6ecde; box-shadow:inset 0 0 0 2px #203521; }
.header-cta {
  width:clamp(180px, 15.2vw, 311px); height:clamp(39px, 2.87vw, 59px);
  display:flex; align-items:center; justify-content:space-around;
  padding:0 clamp(10px, 1.3vw, 28px);
  border:1px solid #df8b1c; border-radius:6px;
  background:linear-gradient(100deg, #d47a0a 0%, #e78c16 62%, #d87d0c 100%);
  box-shadow:inset 0 1px 2px #ffc65b88, 0 3px 12px #0003;
  color:#fff; cursor:pointer;
  font-family:var(--sans); font-size:clamp(10px,.68vw,14px); font-weight:400; letter-spacing:.1em;
  transition:filter .15s,transform .15s;
}
.header-cta:hover { filter:brightness(1.09); }
.header-cta:active { transform:translateY(1px); }
.header-cta svg { flex:none; }
.hero {
  position:relative;
  width:100%;
  min-height: min(70vw, 1152px);
  height:100svh;
  min-height:780px;
  overflow:hidden;
  background:#160c06 url("assets/hero-fotografia.webp") center center / cover no-repeat;
}
.hero__content {
  position:relative;
  width:100%; min-height:inherit;
  padding-left:6.63%;
  padding-top: clamp(185px, 21.75vh, 254px);
  z-index:1;
}
.hero__title {
  margin:0;
  font-family:var(--serif);
  font-size:clamp(64px, 5.2vw, 106px);
  line-height:.90;
  font-weight:400;
  letter-spacing:0.005em;
  color:#f6f2eb;
  text-shadow:0 2px 3px #0005;
}
.hero__title-line { display:block; white-space:nowrap; }
.hero__title-line--accent { color:var(--amber); }
.hero__glow-rule {
  width:clamp(190px, 16vw, 328px);
  height:2px;
  margin-top:clamp(35px, 3vw, 62px);
  background:linear-gradient(90deg, transparent, #e68a10 12%, #ffa82f 44%, #ffc06b 49%, #b45e07 57%, transparent 100%);
  position:relative;
  box-shadow: 0 0 6px rgba(245,133,6,.65);
}
.hero__glow-rule::after {
  content:""; position:absolute; left:46%; top:50%; width:14px; height:4px;
  transform:translate(-50%,-50%);
  border-radius:50%; background:#fff0cc;
  filter:blur(2px);box-shadow:0 0 11px 3px #ed8f1f;
}
.hero__description {
  max-width:640px;
  margin:clamp(37px,2.95vw,58px) 0 0;
  font-size:clamp(19px,1.19vw,25px);
  line-height:1.42;
  letter-spacing:.006em;
  font-weight:400;
  color:#e2ddda;
  text-shadow:0 1px 5px #000a;
}
.message {
  position:fixed; z-index:100; bottom:24px; left:50%; transform:translateX(-50%);
  width:max-content; max-width:min(92vw,440px);
  padding:13px 20px; border:1px solid #6b6659; border-radius:8px;
  background:#14241ef2; color:#f6ecde; font-size:14px; text-align:center;
  box-shadow:0 10px 35px #0009;
}
/* Layout preliminar para permitir visualização sem cortes críticos.
 * A versão mobile final terá aprovação própria. */
@media (min-width:2049px){
  .hero__content { padding-top:21vh; }
}
@media (max-width:1430px){
  .hero__title { font-size:clamp(51px,5.2vw,82px); }
  .hero__description { max-width:540px; font-size:clamp(17px,1.35vw,20px); }
}
@media (max-width:980px){
  .site-header__approved-art { display:none; }
  .site-header__mobile-brand { display:flex; align-items:center; gap:10px; padding-left:20px; height:100%; font-family:var(--serif); font-size:18px; letter-spacing:.09em; }
  .site-header__mobile-brand img { width:43px; height:auto; }
  .site-header__actions { right:16px; gap:12px; }
  .language-switch__option { width:35px; height:34px; }
  .header-cta { width:auto; height:37px; gap:8px; font-size:10px; }
  .header-cta svg { width:17px; }
  .hero { min-height:820px; background-position:55% center; }
  .hero__content { padding-left:6%; padding-top:170px; }
  .hero__title { font-size:clamp(39px,5.7vw,62px); }
  .hero__description { font-size:17px; max-width:48%; }
}
@media (max-width:640px){
  :root { --header-height:70px; }
  .site-header__mobile-brand { padding-left:12px; gap:7px; font-size:12px; }
  .site-header__mobile-brand img { width:27px; }
  .site-header__actions { right:8px; gap:7px; }
  .language-switch { gap:4px; }
  .language-switch__option { width:28px; height:31px; font-size:9px; }
  .header-cta { padding:0 9px; font-size:0; height:33px; }
  .header-cta svg { width:22px; }
  .hero { height:auto; min-height:900px; background-position:63% center; }
  .hero::before { content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 22%,#080703dd 58%,#080703dc 100%); }
  .hero__content { padding: min(56vh,500px) 7% 70px; }
  .hero__title { font-size:clamp(34px, 9vw, 54px); letter-spacing:0em; line-height:1.04; }
  .hero__title-line { white-space:normal; }
  .hero__glow-rule { margin-top:30px; }
  .hero__description { max-width:100%; margin-top:30px; font-size:16px; line-height:1.5; }
  html:not(.lang-es) .hero__description { line-height:1.62; }
}


/* ============= SECTION 02 ============= */
.stage--02{--forest:#091805;--amber:#f28c05;--cream:#f6ecde;--serif:Georgia,"Times New Roman",serif;--sans:"Avenir Next LT Pro","Avenir Next",Avenir,Arial,sans-serif;}
.stage--02 *{box-sizing:border-box}
.stage--02, .stage--02{margin:0;min-width:320px}
.stage--02{font-family:var(--sans);background:var(--cream);color:#fff}
.stage--02 .method{height:35.15625vw;position:relative;overflow:hidden;padding:6.65vw 5.46vw 0;background:radial-gradient(ellipse 64% 115% at 35% 7%,rgba(51,73,40,.72) 0,rgba(22,43,16,.42) 47%,rgba(4,18,2,0) 91%),linear-gradient(115deg,#0b1b08 0%,#031000 90%);}
.stage--02 .method__introduction h1{font:400 4.02vw/.92 var(--serif);letter-spacing:.001em;margin:0;color:#f8f2ea;text-shadow:0 1px 3px #0005}
.stage--02 .method__introduction h1 span{display:block;color:#ef9007}
.stage--02 .method__introduction>p{font-size:1.035vw;line-height:1.32;color:#e9e9e5;letter-spacing:0;margin:1.02vw 0 0;max-width:1050px}
.stage--02 .method__steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3.75vw;position:relative;margin-top:1.94vw;}
.stage--02 .step-links{position:absolute;inset:0;pointer-events:none;z-index:0}
.stage--02 .step-links:before{content:"";position:absolute;left:10%;right:10%;top:5.5vw;height:1px;background:#c28b13}
.stage--02 .step-links span{position:absolute;top:calc(5.5vw - .33vw);width:.66vw;height:.66vw;border-radius:50%;border:2px solid #ff9d00;background:#8f6505;box-shadow:0 0 0 2px #ffb10055,inset 0 0 0 2px #f1ab18}
.stage--02 .step-links span:nth-child(1){left:24%}
.stage--02 .step-links span:nth-child(2){left:50%}
.stage--02 .step-links span:nth-child(3){left:76%}
.stage--02 .step-card{position:relative;z-index:1;border:1.5px solid #a67d00;border-radius:1vw;background:linear-gradient(160deg,#061600,#031200);min-height:13.82vw;padding:1.43vw 2.05vw 1vw;box-shadow:0 0 12px #0002;}
.stage--02 .step-card__icon{display:block;width:3.83vw;height:3.65vw;color:#ffab02;filter:drop-shadow(0 0 2px #c58a0444)}
.stage--02 .step-card h2{font:400 1.57vw/1.12 var(--serif);letter-spacing:-.018em;margin:.9vw 0 .56vw;color:#f6f2eb}
.stage--02 .step-card p{font-size:1.01vw;line-height:1.31;margin:0;color:#e0dfd9;letter-spacing:-.012em}
.stage--02 .radar-section{display:grid;grid-template-columns:50% 50%;height:21.09375vw;background:radial-gradient(ellipse 75% 135% at 44% 46%,#fff6e7 0,#f8eddf 58%,#f6eada 100%);color:#092015;overflow:hidden}
.stage--02 .radar-section__copy{padding:4.1vw 0 0 5.55vw}
.stage--02 .radar-section__rule{display:block;width:3.1vw;height:1.5px;background:#cd6944;margin-bottom:1.28vw}
.stage--02 .radar-section__copy h2{font:400 5.18vw/1 var(--serif);white-space:nowrap;margin:0;color:#0a2416;letter-spacing:-.019em}
.stage--02 .radar-section__copy h2 span{color:#ed7306}
.stage--02 .radar-section__copy>p{font:400 1.24vw/1.35 var(--sans);color:#666865;margin:1.75vw 0 0;max-width:35vw}
.stage--02 .radar{height:100%;position:relative;font-family:var(--sans)}
.stage--02 .radar__geometry{display:block;width:100%;height:100%;position:absolute;inset:0}
.stage--02 .radar__monogram{position:absolute;left:44.4%;top:45.8%;transform:translate(-50%,-50%);width:3vw;height:2.35vw;object-fit:contain;filter:brightness(0) saturate(100%) invert(57%) sepia(97%) saturate(965%) hue-rotate(356deg) brightness(106%) contrast(108%);}
.stage--02 .radar__annotation{position:absolute;z-index:1;width:13.6vw;color:#575856;font-size:.94vw;line-height:1.33}
.stage--02 .radar__annotation h3{font-family:var(--sans);font-weight:700;color:#161a13;text-transform:uppercase;font-size:.76vw;letter-spacing:.06em;margin:0 0 .13vw}
.stage--02 .radar__annotation p{margin:0;}
.stage--02 .radar__annotation--market{right:calc(100% - 24%);top:14.5%;text-align:right}
.stage--02 .radar__annotation--behavior{left:68.9%;top:14.5%;text-align:left}
.stage--02 .radar__annotation--languages{right:calc(100% - 24%);top:64.5%;text-align:right}
.stage--02 .radar__annotation--identity{left:69.7%;top:64.5%;text-align:left}
@media(min-width:2049px){.stage--02 .method{padding-top:136px;padding-left:max(5.46vw,112px);padding-right:max(5.46vw,112px)}
.stage--02 .method__introduction h1{font-size:82px}
.stage--02 .method__introduction>p{font-size:21px;margin-top:21px}
.stage--02 .method__steps{margin-top:40px}
.stage--02 .step-card{min-height:283px;padding:29px 42px}
.stage--02 .step-card__icon{width:78px;height:75px}
.stage--02 .step-card h2{font-size:32px;margin:13px 0 11px}
.stage--02 .step-card p{font-size:21px}
.stage--02 .radar-section__copy h2{font-size:93px}
.stage--02 .radar-section__copy>p{font-size:25px}
.stage--02 .radar__annotation{font-size:19px}
.stage--02 .radar__annotation h3{font-size:15px}}
@media(max-width:1200px) and (min-width:821px){.stage--02 .method{height:auto;padding-top:70px;padding-bottom:42px}
.stage--02 .method__introduction h1{font-size:clamp(45px,4.9vw,65px)}
.stage--02 .method__introduction>p{font-size:clamp(15px,1.5vw,18px)}
.stage--02 .method__steps{gap:2vw;margin-top:35px}
.stage--02 .step-card{min-height:210px;padding:20px 19px}
.stage--02 .step-card__icon{width:48px;height:49px}
.stage--02 .step-card h2{font-size:clamp(19px,2vw,25px);margin:14px 0 10px}
.stage--02 .step-card p{font-size:clamp(14px,1.35vw,17px)}
.stage--02 .radar-section{height:auto;min-height:365px}
.stage--02 .radar-section__copy{padding-top:80px}
.stage--02 .radar-section__copy h2{font-size:clamp(42px,5.2vw,67px)}
.stage--02 .radar-section__copy>p{font-size:clamp(16px,1.7vw,19px);max-width:40vw}
.stage--02 .radar__annotation{font-size:11px}
.stage--02 .radar__annotation h3{font-size:10px}}
@media(max-width:820px){.stage--02 .method{height:auto;padding:84px 6vw 65px}
.stage--02 .method__introduction h1{font-size:clamp(48px,7.8vw,70px)}
.stage--02 .method__introduction>p{font-size:18px;max-width:670px;line-height:1.45;margin-top:20px}
.stage--02 .break-wide{display:none}
.stage--02 .method__steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:40px}
.stage--02 .step-links{display:none}
.stage--02 .step-card{min-height:240px;padding:24px;border-radius:14px}
.stage--02 .step-card__icon{width:56px;height:56px}
.stage--02 .step-card h2{font-size:29px;margin:17px 0 10px}
.stage--02 .step-card p{font-size:17px;line-height:1.4;letter-spacing:0}
.stage--02 .radar-section{height:auto;display:block;padding-bottom:30px}
.stage--02 .radar-section__copy{padding:64px 6vw 20px}
.stage--02 .radar-section__rule{width:46px}
.stage--02 .radar-section__copy h2{font-size:clamp(46px,7.6vw,70px)}
.stage--02 .radar-section__copy>p{font-size:19px;max-width:700px;margin-top:20px}
.stage--02 .radar{height:360px;width:100%;max-width:800px;margin:auto}
.stage--02 .radar__monogram{width:78px;height:65px}
.stage--02 .radar__annotation{font-size:12px;width:22%;}
.stage--02 .radar__annotation h3{font-size:11px;letter-spacing:0}
.stage--02 .radar__annotation--market, .stage--02 .radar__annotation--languages{right:77%}
.stage--02 .radar__annotation--behavior, .stage--02 .radar__annotation--identity{left:73%}}
@media(max-width:540px){.stage--02 .method{padding:53px 7% 46px}
.stage--02 .method__introduction h1{font-size:clamp(36px,9vw,48px);line-height:1.02}
.stage--02 .method__introduction>p{font-size:16px;line-height:1.5}
.stage--02 .method__steps{grid-template-columns:1fr;gap:16px;margin-top:32px}
.stage--02 .step-card{min-height:0;padding:20px 22px 23px}
.stage--02 .step-card__icon{width:45px;height:43px}
.stage--02 .step-card h2{font-size:27px;margin:12px 0 8px}
.stage--02 .step-card p{font-size:16px}
.stage--02 .radar-section__copy{padding:43px 7% 8px}
.stage--02 .radar-section__rule{margin-bottom:20px}
.stage--02 .radar-section__copy h2{font-size:clamp(42px,10.1vw,53px);letter-spacing:-.04em}
.stage--02 .radar-section__copy>p{font-size:16px;line-height:1.5;margin-top:22px}
.stage--02 .radar{height:auto;max-width:520px;min-height:480px;display:grid;grid-template-columns:repeat(2,1fr);padding:260px 7% 0;gap:13px 17px;align-items:start}
.stage--02 .radar__geometry{height:250px;width:100%;top:0}
.stage--02 .radar__monogram{top:125px;left:44.5%;width:26px;height:22px}
.stage--02 .radar__annotation{position:relative;inset:auto!important;width:auto!important;font-size:14px;line-height:1.35;text-align:left!important}
.stage--02 .radar__annotation h3{font-size:11px;letter-spacing:.025em;margin-bottom:4px}
.stage--02 .radar__annotation br{display:none}}

/* ============= SECTION 03 ============= */
.stage--03{
  --cream: #f6ecde;
  --amber: #f09709;
  --serif: Georgia, "Times New Roman", serif;
  --sans: "Avenir Next LT Pro", "Avenir Next", Avenir, Arial, sans-serif;
}
.stage--03 *, .stage--03 *::before, .stage--03 *::after{ box-sizing: border-box; }
.stage--03, .stage--03{ margin: 0; min-width: 320px; }
.stage--03{ color: var(--cream); background: #100905; }
.stage--03 .experience{
  position: relative;
  width: 100%;
  min-height: 56.25vw;
  background: #100905 url("assets/experiencia-fotografia.webp") center / cover no-repeat;
  overflow: hidden;
  isolation: isolate;
}
.stage--03 .experience__content{
  position: relative;
  z-index: 1;
  margin-left: 47.65%;
  width: 48.5%;
  padding-top: 9.8%;
  padding-bottom: 3%;
}
.stage--03 .experience__title{
  margin: 0;
  font: 400 4.62vw/.98 var(--serif);
  letter-spacing: .002em;
  color: #f8f2eb;
  text-shadow: 0 2px 3px rgba(0,0,0,.4);
}
.stage--03 .experience__title-line{ display: block; white-space: nowrap; }
.stage--03 .experience__title em{ font-style: normal; color: var(--amber); }
.stage--03 .experience__body{
  margin-top: 2.75vw;
  color: #eee8e2;
  font: 400 1.65vw/1.36 var(--serif);
  letter-spacing: .001em;
  text-shadow: 0 1px 3px rgba(0,0,0,.62);
}
.stage--03 .experience__body p{ margin: 0; }
.stage--03 .experience__body p + p{ margin-top: 1.49vw; }
.stage--03 .experience__rule{
  margin-top: 2.25vw;
  width: 4.04vw;
  height: 2px;
  background: linear-gradient(90deg, #d17a07, #ffb32b);
  box-shadow: 0 0 3px rgba(239,155,30,.43);
}
.stage--03 .experience__statement{
  margin: 2.36vw 0 0;
  font: 400 2.53vw/1.19 var(--serif);
  letter-spacing: .001em;
  color: var(--amber);
  text-shadow: 0 1px 3px rgba(0,0,0,.55);
}
.stage--03 .experience__statement span{ display: block; white-space: nowrap; }
.stage--03 .experience__values{
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 1.46vw;
  margin: 3.05vw 0 0;
  color: #e8e5df;
  font: 400 1.11vw/1.25 var(--sans);
  letter-spacing: .225em;
  white-space: nowrap;
  text-shadow: 0 1px 3px #000;
}
.stage--03 .experience__separator{ display: inline-block; width: 1.5px; height: 1.35vw; background: #d89200; box-shadow: 0 0 2px #a77810; }
@media (min-width: 2049px) {.stage--03 .experience__content{ padding-top: min(9.8vw, 201px); }
.stage--03 .experience__title{ font-size: min(4.62vw, 95px); }
.stage--03 .experience__body{ font-size: min(1.65vw, 33.8px); }
.stage--03 .experience__statement{ font-size: min(2.53vw, 51.8px); }
.stage--03 .experience__values{ font-size: min(1.11vw, 22.8px); }}
@media (max-width: 1200px) {.stage--03 .experience{ min-height: max(56.25vw, 740px); background-position: 48% center; }
.stage--03 .experience__content{ margin-left: 46.2%; width: 51%; padding-top: max(15vw, 135px); padding-bottom: 80px; }
.stage--03 .experience__title{ font-size: clamp(46px, 4.7vw, 64px); line-height: 1.02; }
.stage--03 .experience__title-line{ white-space: normal; }
.stage--03 .experience__body{ font-size: clamp(18px, 1.76vw, 22px); margin-top: 32px; line-height: 1.4; }
.stage--03 .break-desktop{ display: none; }
.stage--03 .experience__body p + p{ margin-top: 24px; }
.stage--03 .experience__rule{ width: 66px; margin-top: 30px; }
.stage--03 .experience__statement{ margin-top: 26px; font-size: clamp(28px, 2.5vw, 35px); line-height: 1.22; }
.stage--03 .experience__statement span{ white-space: normal; }
.stage--03 .experience__values{ margin-top: 35px; gap: 12px; font-size: clamp(12px, 1.3vw, 16px); letter-spacing: .12em; }
.stage--03 .experience__separator{ height: 18px; }}
@media (max-width: 760px) {.stage--03 .experience{
    min-height: 0;
    background: #080706;
    padding: min(60vh, 510px) 7% 65px;
  }
.stage--03 .experience::before{
    content: "";
    position: absolute;
    inset: 0 0 auto 0;
    height: min(66vh, 570px);
    background-image: linear-gradient(to bottom, rgba(8,7,6,0) 63%, #080706 99%), url("assets/experiencia-fotografia.webp");
    background-size: cover, auto 100%;
    background-position: center, 13% top;
    background-repeat: no-repeat;
    z-index: 0;
  }
.stage--03 .experience__content{ width: 100%; margin: 0; padding: 0; }
.stage--03 .experience__title{ font-size: clamp(38px, 9.9vw, 62px); line-height: 1.04; }
.stage--03 .experience__body{ font-size: clamp(17px, 3.8vw, 20px); line-height: 1.49; margin-top: 27px; }
.stage--03 .experience__body p + p{ margin-top: 20px; }
.stage--03 .experience__rule{ margin-top: 33px; }
.stage--03 .experience__statement{ font-size: clamp(27px, 6.5vw, 39px); margin-top: 24px; }
.stage--03 .experience__values{ margin-top: 32px; gap: 9px; font-size: clamp(10px, 2.25vw, 14px); letter-spacing: .13em; flex-wrap: wrap; }}

/* ============= SECTION 04 ============= */
.stage--04{
  --cream: #F6ECDE;
  --forest: #003d2b;
  --forest-ink: #00271e;
  --amber: #ff6b0a;
  --green-text: #2B4232;
  --serif: Georgia, "Times New Roman", serif;
  --sans: "Avenir Next LT Pro", "Avenir Next", Avenir, "Segoe UI", Arial, sans-serif;
}
.stage--04 *{ box-sizing: border-box; }
.stage--04, .stage--04{ margin: 0; min-width: 320px; }
.stage--04{ font-family: var(--sans); background: var(--cream); }
.stage--04 .services{
  width: 100%; min-height: 56.25vw;
  background: #F8EDDE;
  color: var(--forest-ink);
  padding: 5.9vw 2.35vw 2.4vw;
  overflow: hidden;
}
.stage--04 .services__intro{ display:flex; align-items:flex-start; justify-content:space-between; padding:0 6.0vw 0 5.15vw; min-height: 12.35vw; }
.stage--04 .services__opening h1{
  font:400 4.39vw/1.01 var(--serif); letter-spacing:-.032em; margin:0;
  white-space:nowrap; color: #003529;
}
.stage--04 .services__opening h1 span{ display:block; color: #ff690d; }
.stage--04 .services__opening p{
  color: var(--green-text); font:400 1.43vw/1.35 var(--sans);
  margin: .72vw 0 0; letter-spacing:.007em;
}
.stage--04 .services__compass{ flex:none; width:10.1vw; height:10.1vw; margin-top:.3vw; color:#ff700b; }
.stage--04 .services__panels{ display:grid; grid-template-columns:1fr 1fr; gap:.55vw; width:100%; }
.stage--04 .service-panel{
  border-radius:1.21vw;
  min-height: 27.64vw;
  padding: 1.95vw 1.85vw 2.0vw;
  overflow:hidden;
  isolation:isolate;
  position:relative;
}
.stage--04 .service-panel--strategy{ background:
  radial-gradient(ellipse 87% 125% at 2% -23%,rgba(2,95,60,.62),transparent 78%),
  radial-gradient(ellipse 74% 145% at 101% -30%,rgba(0,96,64,.70),transparent 76%),
  radial-gradient(ellipse 120% 115% at 52% 120%,rgba(0,101,70,.42),transparent 65%),
  linear-gradient(130deg,#00281c 0%,#002819 46%,#003e2b 100%);
  box-shadow:inset 0 0 1px rgba(255,255,255,.65);
}
.stage--04 .service-panel--contract{ background:
  radial-gradient(ellipse 115% 140% at 19% -44%, #ffad37 2%,transparent 83%),
  radial-gradient(ellipse 99% 82% at 106% 110%,rgba(255,115,8,.78),transparent 78%),
  linear-gradient(139deg,#ffa021,#ff8d06 55%,#ff780a);
  box-shadow:inset 0 0 1px rgba(255,255,255,.6);
}
.stage--04 .service-panel__header{ height: 6.98vw; text-align:center; }
.stage--04 .service-panel__header h2{ margin:0; color:#fff5e8; font:400 3.06vw/1.15 var(--serif); letter-spacing:-.033em; white-space:nowrap; text-shadow:0 1px 4px rgba(0,0,0,.15); }
.stage--04 .service-panel--contract .service-panel__header h2{ font-size: 3.03vw; letter-spacing: -.034em; }
.stage--04 .service-panel__header p{ margin:.62vw 0 0; color:#f8efdd; font:400 1.11vw/1.28 var(--sans); white-space:nowrap; letter-spacing:-.014em; }
.stage--04 .service-panel__grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap: .85vw .75vw; }
.stage--04 .service-card{
  display:flex; align-items:center; min-width:0;
  gap:1.35vw;
  background:linear-gradient(166deg,#fff8ed 0%,#fffaf3 58%,#fff4e6 100%);
  border-radius:.78vw;
  min-height:7.9vw;
  padding: 1.15vw 1.13vw 1.1vw 1.3vw;
  box-shadow:0 2px 10px rgba(0,0,0,.105),inset 0 1px 0 rgba(255,255,255,.9);
}
.stage--04 .service-card__icon{
  flex:none; width:4.75vw; height:4.75vw; border-radius:50%; display:grid; place-items:center;
  color:#ff7011; background:#ffedda;
  box-shadow: inset 0 0 0 1px rgba(255,146,45,.06);
}
.stage--04 .service-card__icon svg{ width:62%; height:62%; }
.stage--04 .service-card__text{ min-width:0; }
.stage--04 .service-card__text h3{ margin:0 0 .52vw; color:#003529; white-space:nowrap; font:400 1.47vw/1.09 var(--serif); letter-spacing:-.035em; }
.stage--04 .service-panel--contract .service-card__text h3{ font-size:1.32vw; letter-spacing:-.04em; }
.stage--04 .service-card__text p{ margin:0; color:var(--green-text); font:400 1.1vw/1.34 var(--sans); letter-spacing:-.017em; }
.stage--04 .services__footer{ display:grid; grid-template-columns: 1.23fr 1fr; gap: 2.5vw; padding:1.4vw 5.2vw 0; align-items:center; }
.stage--04 .services__footer h2{ font:400 3.24vw/.97 var(--serif); letter-spacing:-.039em; margin:0; white-space:nowrap; }
.stage--04 .services__footer h2 span{ display:block; color:#ff6f12; }
.stage--04 .services__footer p{ border-left:1px solid rgba(204,113,57,.6); padding:.2vw 0 .1vw 3.85vw; color:var(--green-text); font:400 1.33vw/1.28 var(--sans); letter-spacing:-.01em; margin:0; max-width: 35vw; }
@media (min-width:951px) {
.stage--04 .service-card{align-items:flex-start;}
.stage--04 .service-card__text{display:flex;flex-direction:column;justify-content:center;min-height:4.9vw;width:100%;}
.stage--04 .service-card__text h3{white-space:normal;line-height:1.03;min-height:2.25em;display:flex;align-items:flex-end;max-width:100%;}
.stage--04 .service-card__text p{margin-top:.1vw;max-width:97%;}
.stage--04 .service-panel--strategy .service-card:nth-child(3) h3{ font-size:1.33vw; }
.stage--04 .service-panel--contract .service-card:nth-child(2) h3, .stage--04 .service-panel--contract .service-card:nth-child(4) h3{ font-size:1.115vw; letter-spacing:-.045em; }
}

@media (max-width:1350px) and (min-width:951px) {.stage--04 .services__opening h1{font-size:4.25vw;}
.stage--04 .service-panel{ padding-inline:1.4vw; }
.stage--04 .service-card{gap:1vw; padding-inline:.9vw;}
.stage--04 .service-panel__header h2{ font-size:3vw; }
.stage--04 .service-card__text{min-height:5.2vw;}
.stage--04 .service-card__text h3{font-size:1.44vw;}
.stage--04 .service-panel--contract .service-card__text h3{font-size:1.27vw;}
}
@media (max-width:950px) {.stage--04 .services{padding:60px 4% 65px; min-height:0;}
.stage--04 .services__intro{min-height:0; padding:0 1.5% 45px; gap:30px; align-items:center;}
.stage--04 .services__opening h1{font-size:clamp(43px,5.65vw,68px); line-height:1.02; letter-spacing:-.028em; white-space:normal;}
.stage--04 .services__opening p{font-size:clamp(16px,2.1vw,22px); line-height:1.42; margin-top:17px;}
.stage--04 .services__compass{width:clamp(86px,14vw,170px); height:clamp(86px,14vw,170px); margin:0;}
.stage--04 .services__panels{grid-template-columns:1fr; gap:20px;}
.stage--04 .service-panel{min-height:0; border-radius:20px; padding:35px 32px 34px;}
.stage--04 .service-panel__header{height:auto; padding-bottom:30px;}
.stage--04 .service-panel__header h2, .stage--04 .service-panel--contract .service-panel__header h2{font-size:clamp(39px,5.2vw,58px); white-space:normal;}
.stage--04 .service-panel__header p{font-size:clamp(16px,2.2vw,21px); margin-top:14px; white-space:normal;}
.stage--04 .service-panel__grid{gap:15px;}
.stage--04 .service-card{min-height:140px; gap:18px; border-radius:13px; padding:18px;}
.stage--04 .service-card__icon{width:75px; height:75px;}
.stage--04 .service-card__text h3, .stage--04 .service-panel--contract .service-card__text h3{font-size:clamp(22px,2.8vw,30px); white-space:normal; letter-spacing:-.028em; margin-bottom:9px;}
.stage--04 .service-card__text p{font-size:clamp(15px,2vw,19px);line-height:1.42;}
.stage--04 .desktop-only{display:none;}
.stage--04 .services__footer{display:grid; grid-template-columns:1fr 1fr; padding:37px 1.5% 0; gap:20px;}
.stage--04 .services__footer h2{font-size:clamp(37px,4.8vw,53px); white-space:normal; line-height:1.02;}
.stage--04 .services__footer p{max-width:none;font-size:clamp(16px,2vw,20px);padding-left:20px;line-height:1.45;}}
@media (max-width:610px) {.stage--04 .services{padding:44px 5% 50px;}
.stage--04 .services__intro{padding:0 0 24px; gap:6px; align-items:flex-start;}
.stage--04 .services__opening h1{font-size:clamp(34px,8.3vw,49px); line-height:1.06; }
.stage--04 .services__opening p{font-size:15px; line-height:1.44; margin-top:18px;}
.stage--04 .services__compass{height:59px;width:59px; margin-top:5px;}
.stage--04 .service-panel{border-radius:16px;padding:28px 17px 20px;}
.stage--04 .service-panel__header{padding:0 8px 26px;}
.stage--04 .service-panel__header h2, .stage--04 .service-panel--contract .service-panel__header h2{font-size:clamp(32px,8.15vw,43px);line-height:1.12;letter-spacing:-.025em;}
.stage--04 .service-panel__header p{font-size:15px;line-height:1.4;margin-top:10px;}
.stage--04 .service-panel__grid{grid-template-columns:1fr;gap:12px;}
.stage--04 .service-card{border-radius:12px; min-height:112px; gap:15px; padding:13px 15px;}
.stage--04 .service-card__icon{width:69px;height:69px;}
.stage--04 .service-card__text h3, .stage--04 .service-panel--contract .service-card__text h3{font-size:clamp(22px,5.6vw,27px);margin-bottom:7px;}
.stage--04 .service-card__text p{font-size:15px;line-height:1.36;}
.stage--04 .services__footer{grid-template-columns:1fr; padding:34px 1% 0; gap:21px;}
.stage--04 .services__footer h2{font-size:clamp(34px,8vw,44px);line-height:1.04;}
.stage--04 .services__footer p{font-size:16px;padding:0 0 0 18px;}}
@media (max-width:370px) {.stage--04 .services__compass{width:42px;height:42px;}
.stage--04 .service-card__icon{width:59px;height:59px;}
.stage--04 .service-card{padding:12px;gap:12px;}
.stage--04 .service-card__text h3, .stage--04 .service-panel--contract .service-card__text h3{font-size:21px;}}

/* ============= SECTION 05 ============= */
.stage--05{
 --deep:#001b14; --green:#002d23; --cream:#f6ecde; --amber:#ffa32d;
 --serif:Georgia,"Times New Roman",serif;
 
 --sans:"avenir-next","avenir-next-lt-pro","Avenir Next LT Pro","Avenir Next","Segoe UI",Arial,sans-serif;
}
.stage--05 *{box-sizing:border-box}
.stage--05, .stage--05{margin:0;min-width:320px}
.stage--05{background:#001a14;color:#f9f5ec;font-family:var(--sans);font-weight:400;-webkit-font-smoothing:antialiased;}
.stage--05 .real-work{position:relative;isolation:isolate;min-height:56.25vw;overflow:hidden;
 background:
 radial-gradient(ellipse 16% 30% at -2% -9%,rgba(255,189,67,.75),transparent 77%),
 radial-gradient(ellipse 75% 58% at 47% -25%,rgba(0,99,81,.33),transparent 77%),
 radial-gradient(ellipse 55% 56% at 99% 93%,rgba(9,84,63,.34),transparent 81%),
 radial-gradient(ellipse 85% 130% at 37% 37%,rgba(0,58,45,.34),transparent 76%),
 linear-gradient(120deg,#001b15 4%,#002a20 47%,#00160f 92%);
}
.stage--05 .real-work::before{content:"";pointer-events:none;position:absolute;inset:0;
 background:radial-gradient(ellipse 80% 52% at 50% 47%,transparent 45%,rgba(0,9,6,.28));z-index:-1}
.stage--05 .real-work__main{max-width:2048px;margin:0 auto;padding:7.25vw 6.02vw 1.43vw;}
.stage--05 .real-work__title{margin:0 0 1.15vw 2.6vw;font:400 5.34vw/1.12 var(--serif);letter-spacing:-.035em;white-space:nowrap;color:#fffaf0;text-shadow:1px 2px 3px rgba(0,0,0,.22)}
.stage--05 .real-work__title em{font-style:normal;color:#ffb34c}
.stage--05 .case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.40vw}
.stage--05 .case{position:relative;min-width:0;min-height:31.95vw;border:1px solid rgba(190,144,70,.69);
 border-radius:.91vw;padding:1.47vw 1.45vw 1.40vw;overflow:hidden;
 background: radial-gradient(ellipse 60% 60% at 100% 105%,rgba(127,98,25,.24),transparent 70%),
 radial-gradient(ellipse 88% 49% at 0% 0%,rgba(107,68,19,.23),transparent 78%),
 linear-gradient(155deg,rgba(25,29,18,.72),rgba(0,21,15,.85) 62%,rgba(0,42,30,.57));
 box-shadow:inset 0 1px rgba(255,242,182,.07);}
.stage--05 .case__image{display:block;aspect-ratio:826/310;width:100%;height:auto;object-fit:contain;border-radius:.8vw;border:1px solid rgba(187,139,49,.23)}
.stage--05 .case__content{padding: .85vw 1.79vw 0;}
.stage--05 .case__title{font:400 2.53vw/1.08 var(--serif);letter-spacing:-.026em;margin:0;color:#fffaf3;white-space:nowrap;text-shadow:0 1px 3px rgba(0,0,0,.2)}
.stage--05 #mk-title{font-size:2.08vw;line-height:1.02;letter-spacing:-.03em;white-space:normal;max-width:96%;text-wrap:balance}
.stage--05 .case__eyebrow{font:400 .80vw/1.25 var(--sans);letter-spacing:.11em;color:#f9ae31;text-transform:uppercase;white-space:nowrap;margin:.34vw 0 0}
.stage--05 .case__rule{height:2px;width:3.25vw;min-width:30px;background:#ffae35;box-shadow:0 0 6px rgba(255,165,44,.27);margin:1.07vw 0 .88vw;}
.stage--05 .case__description{font:400 1.285vw/1.34 var(--sans);letter-spacing:.008em;color:#e7e9e4;margin:0;max-width:90%;}
.stage--05 .real-work__footer{position:relative;padding:1.32vw 2vw 1.6vw;text-align:center;}
.stage--05 .real-work__footer::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,rgba(250,182,68,.08),rgba(253,191,77,.32) 32%,rgba(255,207,100,.66) 50%,rgba(253,191,77,.32) 68%,rgba(250,182,68,.08));}
.stage--05 .real-work__footer::after{content:"";position:absolute;width:18vw;height:1.5vw;left:50%;top:-.73vw;transform:translateX(-50%);background:radial-gradient(ellipse at center,rgba(255,217,138,.87),rgba(255,174,55,.35) 24%,transparent 69%);filter:blur(4px);pointer-events:none;}
.stage--05 .real-work__footer h2{font:400 2.63vw/1.1 var(--serif);color:#fff8e9;margin:0;letter-spacing:-.032em}
.stage--05 .real-work__footer p{font:400 .93vw/1.4 var(--sans);letter-spacing:.24em;margin:1.2vw 0 0;color:#dddcd5;}
.stage--05 .real-work__footer p span{color:#e5aa42;padding:0 .5vw;}
@media (min-width:2049px) {.stage--05 .real-work__main{padding-top:149px;padding-left:123px;padding-right:123px;padding-bottom:29px}
.stage--05 .real-work__title{font-size:109px;margin-left:53px;margin-bottom:24px}
.stage--05 .case-grid{gap:29px}
.stage--05 .case{padding:30px;min-height:655px;border-radius:19px}
.stage--05 .case__image{border-radius:16px}
.stage--05 .case__content{padding:18px 37px 0}
.stage--05 .case__title{font-size:52px}
.stage--05 #mk-title{font-size:43px}
.stage--05 .case__eyebrow{font-size:18px;margin-top:7px}
.stage--05 .case__rule{width:67px;margin:22px 0 18px}
.stage--05 .case__description{font-size:26px}
.stage--05 .real-work__footer{padding:27px 41px 33px}
.stage--05 .real-work__footer h2{font-size:54px}
.stage--05 .real-work__footer p{font-size:19px;margin-top:25px}}
@media (max-width:1450px) and (min-width:901px) {.stage--05 .real-work__main{padding-top:7vw}
.stage--05 .real-work__title{font-size:5.25vw}
.stage--05 .case{min-height:33vw}
.stage--05 .case__title{font-size:2.45vw}
.stage--05 #mk-title{font-size:2.04vw}
.stage--05 .case__eyebrow{font-size:.86vw;letter-spacing:.12em}
.stage--05 .case__description{font-size:1.26vw}}
@media (max-width:900px) {.stage--05 .real-work{min-height:0}
.stage--05 .real-work__main{padding:70px 5% 48px}
.stage--05 .real-work__title{font-size:clamp(43px,6.4vw,74px);line-height:1.07;white-space:normal;letter-spacing:-.03em;margin:0 0 36px}
.stage--05 .case-grid{grid-template-columns:1fr;gap:25px}
.stage--05 .case{border-radius:20px;min-height:0;padding:20px 20px 34px}
.stage--05 .case__image{border-radius:13px}
.stage--05 .case__content{padding:22px 8px 0}
.stage--05 .case__title{font-size:clamp(35px,5.4vw,54px);white-space:normal}
.stage--05 #mk-title{font-size:clamp(31px,4.5vw,46px);white-space:normal;max-width:100%}
.stage--05 .case__eyebrow{font-size:clamp(11px,1.9vw,16px);letter-spacing:.1em;line-height:1.45;margin-top:9px;white-space:normal}
.stage--05 .case__rule{width:54px;margin:22px 0 18px}
.stage--05 .case__description{font-size:clamp(16px,2.4vw,22px);line-height:1.46;max-width:100%}
.stage--05 .real-work__footer{padding:35px 4% 47px}
.stage--05 .real-work__footer h2{font-size:clamp(31px,4.9vw,53px);line-height:1.15}
.stage--05 .real-work__footer p{font-size:clamp(11px,1.6vw,16px);line-height:1.8;letter-spacing:.13em;margin:22px 0 0}}
@media (max-width:520px) {.stage--05 .real-work__main{padding:52px 17px 32px}
.stage--05 .real-work__title{font-size:clamp(40px,10vw,54px);margin-bottom:29px}
.stage--05 .case{padding:12px 12px 25px;border-radius:15px}
.stage--05 .case__image{border-radius:8px}
.stage--05 .case__content{padding:18px 8px 0}
.stage--05 .case__title{font-size:clamp(29px,8vw,38px);line-height:1.1}
.stage--05 #mk-title{font-size:clamp(26px,7vw,34px);line-height:1.08}
.stage--05 .case__description{font-size:16px}
.stage--05 .real-work__footer{padding:27px 18px 44px}
.stage--05 .real-work__footer h2{font-size:clamp(30px,7vw,38px)}
.stage--05 .real-work__footer p{font-size:11px;line-height:2;letter-spacing:.11em}}

/* ============= SECTION 06 ============= */
.stage--06{--beige:#F6ECDE;--green:#003b2a;--ink:#071d17;--amber:#ff6b0a;--cream:#fff3e4;--body:"avenir-next","Avenir Next LT Pro","Avenir Next",Avenir,"Segoe UI",Arial,sans-serif;--title:Georgia,"Times New Roman",serif;}
.stage--06 *{box-sizing:border-box}
.stage--06{scroll-behavior:smooth}
.stage--06, .stage--06{margin:0;min-width:320px}
.stage--06{color:var(--ink);background:var(--beige);font-family:var(--body);-webkit-font-smoothing:antialiased}
.stage--06 .reflection{width:100%; min-height:56.25vw; background:radial-gradient(ellipse 100% 38% at 46% 96%, #fbf2e8 0,transparent 86%),radial-gradient(ellipse 80% 70% at 48% 38%,#fff4e9 0,#fceee0 72%,#f9ecdc 100%);overflow:hidden;padding:6.45vw 3.7vw 0;}
.stage--06 .reflection__headline{margin:0 0 1.65vw 1.45vw; font:400 clamp(54px,4.68vw,92px)/1.04 var(--title);letter-spacing:-.042em;white-space:normal;max-width:94%;text-wrap:balance;color:#081914}
.stage--06 .reflection__headline em{font-weight:400;color:var(--amber);font-style:italic}
.stage--06 .question-panel{border-radius:1.12vw;min-height:27.5vw;padding:1.75vw 2.7vw 2.0vw;position:relative;overflow:hidden;background:radial-gradient(ellipse 50% 80% at 94% 0%, rgba(44,108,88,.54),transparent 80%),radial-gradient(ellipse 45% 120% at 9% 89%,rgba(0,92,71,.50), transparent 81%),radial-gradient(ellipse 50% 80% at 60% 110%,rgba(0,97,66,.30),transparent 85%),linear-gradient(132deg,#003b2a,#003c2d 42%,#034336 100%); box-shadow:inset 0 0 1px rgba(255,250,236,.4);}
.stage--06 .question-panel__heading{color:#f9ede0;margin:0 0 1.0vw .1vw;font:400 2.98vw/1.04 var(--title);letter-spacing:-.036em}
.stage--06 .question-panel__accent{width:3.58vw;height:2px;background:var(--amber);box-shadow:0 0 13px rgba(255,121,13,.6);margin:0 0 1.43vw .22vw}
.stage--06 .question-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.7vw;}
.stage--06 .question-card{min-width:0;height:18.2vw;border:1.35px solid rgba(255,246,228,.89);border-radius:1.07vw;padding:1.35vw 2.05vw 1.1vw;display:flex;flex-direction:column;justify-content:flex-start;background:linear-gradient(160deg,rgba(0,30,24,.18),rgba(0,47,36,.06));}
.stage--06 .question-card__number{font:700 2.83vw/.99 "avenir-next-condensed","Avenir Next LT Pro Bold Condensed","Avenir Next Condensed","Arial Narrow",sans-serif;color:#ff891f;letter-spacing:-.057em;padding-left:0;margin:0 0 .55vw}
.stage--06 .question-card__divider{height:1px;width:100%;background:rgba(245,226,197,.65);margin:0 0 1.27vw}
.stage--06 .question-card__text{font:400 2.05vw/1.2 var(--title);color:#f9f0e4;letter-spacing:-.027em;margin:0;}
.stage--06 .reflection__ending{min-height:10.1vw;position:relative;display:flex;align-items:flex-start;padding:1.24vw 1.45vw 1.25vw;justify-content:space-between;gap:2vw}
.stage--06 .reflection__statement{font:400 3.53vw/.95 var(--title);color:#071a15;letter-spacing:-.045em;margin:0;white-space:nowrap;}
.stage--06 .reflection__statement span{display:block;color:var(--amber);margin-top:.22vw}
.stage--06 .reflection__cta{flex:none;align-self:flex-end;display:block;width:22.92vw;max-width:470px;aspect-ratio:479/102;margin:0 .65vw .42vw 0;text-decoration:none;border-radius:9px;transition:filter .18s ease,transform .18s ease;}
.stage--06 .reflection__cta:hover{filter:brightness(1.12);transform:translateY(-2px)}
.stage--06 .reflection__cta:focus-visible{outline:3px solid var(--amber);outline-offset:5px}
.stage--06 .reflection__cta img{display:block;width:100%;height:auto;object-fit:contain}
.stage--06 .footer{height:5.2vw;min-height:84px;border-top:1px solid rgba(172,94,49,.48);margin:0 .9vw;display:flex;align-items:center;gap:1.15vw;padding:0 1.1vw}
.stage--06 .footer__logo{height:3.38vw;width:3.45vw;object-fit:contain;object-position:center;flex:none;image-rendering:auto}
.stage--06 .footer__separator{height:2.4vw;width:1px;background:rgba(198,131,87,.40);flex:none}
.stage--06 .footer__name{font:400 1.39vw/1.0 var(--title);letter-spacing:.12em;white-space:nowrap;color:#2B4232;text-transform:uppercase}
.stage--06 .footer__tag{font:400 .75vw/1.3 var(--body);letter-spacing:.15em;white-space:nowrap;color:#2B4232;text-transform:uppercase;margin-left:.5vw}
.stage--06 .footer__keywords{margin-left:auto;display:flex;align-items:center;white-space:nowrap;gap:1.52vw;font:.79vw/1 var(--body);letter-spacing:.13em;text-transform:uppercase;color:#2B4232}
.stage--06 .footer__keywords b{height:1.65vw;width:1px;background:rgba(190,124,83,.7)}
@media (min-width:1900px){.stage--06 .reflection{min-height:56.25vw;}}
@media (max-width:1100px){.stage--06 .reflection{min-height:0;padding:75px 4vw 20px}
.stage--06 .reflection__headline{white-space:normal;font-size:clamp(42px,5.1vw,69px);line-height:1.07;margin:0 0 25px;letter-spacing:-.035em}
.stage--06 .question-panel{border-radius:16px;min-height:0;padding:27px 25px 31px}
.stage--06 .question-panel__heading{font-size:clamp(34px,4vw,49px);margin-bottom:12px}
.stage--06 .question-panel__accent{width:54px;margin:0 0 20px}
.stage--06 .question-grid{gap:15px}
.stage--06 .question-card{height:auto;min-height:270px;padding:20px 21px;border-radius:13px}
.stage--06 .question-card__number{font-size:clamp(35px,4vw,45px);margin-bottom:15px}
.stage--06 .question-card__divider{margin-bottom:14px}
.stage--06 .question-card__text{font-size:clamp(23px,2.75vw,32px)}
.stage--06 .reflection__ending{padding:28px 6px 30px;min-height:0;align-items:flex-end}
.stage--06 .reflection__statement{font-size:clamp(32px,4vw,46px);white-space:normal}
.stage--06 .reflection__statement span{margin-top:3px}
.stage--06 .reflection__cta{width:clamp(220px,28vw,330px);margin:0}
.stage--06 .footer{min-height:84px;height:auto;padding:18px 8px;gap:15px;flex-wrap:wrap}
.stage--06 .footer__logo{width:42px;height:44px}
.stage--06 .footer__separator{height:31px}
.stage--06 .footer__name{font-size:15px;color:#2B4232}
.stage--06 .footer__tag{font-size:9px;margin-left:0;color:#2B4232}
.stage--06 .footer__keywords{font-size:10px;gap:11px;color:#2B4232}
.stage--06 .footer__keywords b{height:18px}}
@media (max-width:740px){.stage--06 .reflection{padding:42px 18px 20px}
.stage--06 .reflection__headline{font-size:clamp(35px,7.5vw,52px);margin-bottom:24px;max-width:100%;text-wrap:balance}
.stage--06 .question-panel{padding:24px 17px 20px;border-radius:14px}
.stage--06 .question-panel__heading{font-size:clamp(29px,6vw,40px);max-width:560px}
.stage--06 .question-panel__accent{margin-bottom:20px}
.stage--06 .question-grid{grid-template-columns:1fr;gap:13px}
.stage--06 .question-card{min-height:0;padding:20px 22px 25px}
.stage--06 .question-card__number{font-size:36px;margin:0 0 8px}
.stage--06 .question-card__divider{margin:0 0 14px}
.stage--06 .question-card__text{font-size:clamp(27px,6vw,36px);line-height:1.14;max-width:520px}
.stage--06 .reflection__ending{display:flex;flex-direction:column;align-items:stretch;gap:26px;padding:28px 4px 27px}
.stage--06 .reflection__statement{font-size:clamp(34px,7vw,49px);line-height:1.05}
.stage--06 .reflection__cta{width:min(100%,340px);max-width:100%;align-self:flex-end;aspect-ratio:479/102}
.stage--06 .footer{border-top-color:rgba(172,94,49,.6);margin:0;padding:19px 4px 5px;display:grid;grid-template-columns:44px 1px 1fr;gap:5px 14px;align-items:center}
.stage--06 .footer__logo{grid-row:1/3;width:42px;height:53px}
.stage--06 .footer__separator{grid-row:1/3;height:45px}
.stage--06 .footer__name{font-size:14px;white-space:normal;color:#2B4232}
.stage--06 .footer__tag{grid-column:3;white-space:normal;font-size:8px;color:#2B4232}
.stage--06 .footer__keywords{grid-column:1/-1;justify-content:flex-start;margin:22px 0 0;gap:10px;white-space:normal;font-size:10px;flex-wrap:wrap;color:#2B4232}}
@media (prefers-reduced-motion:reduce){.stage--06 .reflection__cta{transition:none}}
@media (min-width:1101px){.stage--06 .reflection__cta{position:absolute;right:1.45vw;top:2.75vw;margin:0}}

:root { --studio-web-sans: "avenir-next", "Avenir Next LT Pro", "Avenir Next", Avenir, Arial, sans-serif; }
.stage--01 { --sans:var(--studio-web-sans); }
.stage--02 { --sans:var(--studio-web-sans); }
.stage--03 { --sans:var(--studio-web-sans); }
.stage--04 { --sans:var(--studio-web-sans); }
.stage--05 { --sans:var(--studio-web-sans); }
.stage--06 { --body:var(--studio-web-sans); }
/* Avoid layout being pushed sideways by long, unbreakable strings */
.studio-stage {max-width:100%;}
@media(prefers-reduced-motion:reduce){ html{scroll-behavior:auto} }



/* V1.4 — Cabeçalho único responsivo PT/ES baseado na faixa superior aprovada */
.site-header{
  display:flex;align-items:center;justify-content:space-between;
  padding-inline:clamp(13px,8.8vw,180px) clamp(12px,3.35vw,72px);
  gap:clamp(8px,2vw,26px);
}
.site-header__approved-art,.lang-es .site-header .site-header__approved-art{display:none!important}
.site-header .site-header__mobile-brand,
.lang-es .site-header .site-header__mobile-brand{
  position:static!important;inset:auto!important;
  display:flex!important;align-items:center;justify-content:flex-start;
  flex:0 1 auto;min-width:0;max-width:100%;height:auto;
  margin:0;padding:0!important;gap:clamp(11px,1.3vw,26px)!important;
}
.site-header .site-header__mobile-brand img,
.lang-es .site-header .site-header__mobile-brand img{
  width:clamp(50px,4vw,83px)!important;height:clamp(50px,4vw,83px)!important;
  display:block;object-fit:contain;flex:none;
}
.site-header__brand-divider{height:clamp(42px,3.5vw,78px);width:1px;background:rgba(242,233,215,.42);flex:none}
.site-header .site-header__brand-copy,.lang-es .site-header .site-header__brand-copy{
  display:flex!important;flex-direction:column;justify-content:center;align-items:flex-start;
  gap:clamp(4px,.36vw,8px);font:400 clamp(18px,1.65vw,35px)/1 Georgia,serif!important;
  letter-spacing:.08em!important;color:#f6ecde;white-space:nowrap;
}
.site-header .site-header__brand-subtitle,.lang-es .site-header .site-header__brand-subtitle{
  display:block!important;color:#e3a440;
  font:700 clamp(7px,.47vw,11px)/1.15 'avenir-next','Avenir Next LT Pro',Arial,sans-serif!important;
  letter-spacing:.22em!important;text-transform:uppercase;white-space:nowrap;
}
.site-header .site-header__actions{
  position:static!important;inset:auto!important;transform:none!important;
  display:flex;align-items:center;flex:none;margin-left:auto;
}
@media (max-width:1200px){
  .site-header{padding-inline:clamp(15px,4vw,50px);}
  .site-header .site-header__mobile-brand,.lang-es .site-header .site-header__mobile-brand{gap:10px!important;}
  .site-header .site-header__mobile-brand img,.lang-es .site-header .site-header__mobile-brand img{width:50px!important;height:50px!important}
  .site-header .site-header__brand-copy,.lang-es .site-header .site-header__brand-copy{font-size:clamp(16px,1.8vw,24px)!important;}
  .site-header .site-header__brand-subtitle,.lang-es .site-header .site-header__brand-subtitle{font-size:clamp(6px,.65vw,9px)!important;letter-spacing:.13em!important;}
}
@media (max-width:680px){
  .site-header{padding-inline:10px;gap:4px;}
  .site-header .site-header__mobile-brand,.lang-es .site-header .site-header__mobile-brand{gap:6px!important;}
  .site-header .site-header__mobile-brand img,.lang-es .site-header .site-header__mobile-brand img{width:32px!important;height:36px!important;}
  .site-header__brand-divider{height:32px;}
  .site-header .site-header__brand-copy,.lang-es .site-header .site-header__brand-copy{font-size:clamp(10px,2.55vw,16px)!important;letter-spacing:.025em!important;gap:3px;}
  .site-header .site-header__brand-subtitle,.lang-es .site-header .site-header__brand-subtitle{font-size:clamp(5px,1.13vw,7px)!important;letter-spacing:0!important;}
  .site-header .site-header__actions{gap:6px;}
  .site-header .language-switch{gap:3px;}
  .site-header .language-switch__option{width:28px;height:31px;font-size:9px;}
  .site-header .header-cta{padding:0 8px;height:33px;min-width:34px;width:34px;gap:0;font-size:0;}
  .site-header .header-cta svg{width:19px;height:15px;}
}


/* V1.4.1 — Correções pontuais, sem alterar o projeto visual aprovado.
 * Seção 01: ritmo de leitura mais confortável apenas para o parágrafo em PT.
 * A versão ES mantém seu espaçamento original como referência editorial.
 */
html:not(.lang-es) .stage--01 .hero__description {
  line-height: 1.55;
}
