:root{
  --ink:#111111;
  --paper:#f6f5f1;
  --white:#ffffff;
  --line:rgba(17,17,17,.14);
  --muted:#6f6d69;
  --pink:#ee7393;
  --pink-soft:#f5c4d2;
  --shadow:0 30px 80px rgba(17,17,17,.12);
  --display:'Playfair Display', Georgia, serif;
  --sans:'DM Sans', Arial, sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.5;overflow-x:hidden}
body:before{content:"";position:fixed;inset:0;background:linear-gradient(120deg,transparent 30%,rgba(0,0,0,.018) 50%,transparent 70%);pointer-events:none;z-index:-1}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,a{ -webkit-tap-highlight-color:transparent}
.noise{position:fixed;inset:0;pointer-events:none;opacity:.035;z-index:20;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E")}
.site-header{height:82px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;padding:0 5vw;position:sticky;top:0;z-index:15;background:rgba(246,245,241,.84);backdrop-filter:blur(16px);border-bottom:1px solid rgba(17,17,17,.07)}
.brand img{width:82px;height:auto;object-fit:contain}
.nav{display:flex;gap:30px;font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:600}
.nav a{opacity:.72;transition:.2s}.nav a:hover{opacity:1}
.header-cta{justify-self:end;font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;border-bottom:1px solid var(--ink);padding-bottom:5px}
.header-cta span{font-size:15px;margin-left:5px}
.section-pad{padding-left:7vw;padding-right:7vw}
.hero{min-height:calc(100vh - 82px);display:grid;grid-template-columns:1.02fr .98fr;gap:4vw;align-items:center;padding-top:7vw;padding-bottom:7vw;position:relative}
.hero-copy{max-width:720px}
.eyebrow,.section-kicker{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:#73716c}
.eyebrow{display:inline-flex;align-items:center;gap:10px}.dot{width:8px;height:8px;background:var(--pink);border-radius:50%;box-shadow:0 0 0 5px rgba(238,115,147,.12)}
h1{font-size:clamp(60px,9vw,138px);line-height:.86;letter-spacing:-.07em;margin:25px 0 30px;font-weight:600}
h1 em,h2 em{font-family:var(--display);font-weight:500;letter-spacing:-.035em}
.hero-lead{max-width:590px;font-size:clamp(16px,1.55vw,20px);line-height:1.62;color:#4f4d49;margin:0 0 34px}
.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:16px;padding:16px 23px;border-radius:999px;text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:700;transition:transform .2s,box-shadow .2s}.btn:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(0,0,0,.12)}.btn-dark{background:var(--ink);color:white}.btn-light{background:white;color:var(--ink)}.text-link,.arrow-link{font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:700}.text-link span,.arrow-link span{margin-left:8px;font-size:16px}.hero-meta{display:flex;align-items:center;gap:12px;margin-top:64px;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#8a8883}.meta-line{width:34px;height:1px;background:#b9b7b1}
.hero-art{height:720px;position:relative;min-height:520px}.hero-card{position:absolute;background:#eee;box-shadow:var(--shadow);overflow:hidden}.hero-card img{width:100%;height:100%;object-fit:cover}.hero-card-main{width:min(440px,62%);aspect-ratio:.82;right:6%;top:6%;transform:rotate(3.2deg)}.hero-card-float{width:min(255px,38%);aspect-ratio:.8;left:5%;bottom:12%;transform:rotate(-7deg);box-shadow:0 20px 50px rgba(17,17,17,.17)}.hero-badge{position:absolute;right:0;bottom:8%;padding:17px 20px;border:1px solid var(--ink);background:var(--paper);font-size:10px;line-height:1.25;text-transform:uppercase;letter-spacing:.13em;transform:rotate(-4deg);z-index:3}.hero-badge strong{font-size:18px;letter-spacing:-.02em}.hero-orbit{position:absolute;border-radius:50%;border:1px solid rgba(17,17,17,.15)}.orbit-a{width:510px;height:510px;right:-6%;top:11%}.orbit-b{width:260px;height:260px;left:-2%;bottom:8%}
.marquee{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#141414;color:white}.marquee-track{display:flex;width:max-content;align-items:center;gap:28px;padding:15px 0;font-size:12px;text-transform:uppercase;letter-spacing:.15em;animation:marquee 28s linear infinite}.marquee i{color:var(--pink);font-style:normal}@keyframes marquee{to{transform:translateX(-50%)}}
.intro{padding-top:11vw;padding-bottom:11vw}.intro-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:9vw;margin-top:28px}.intro h2,.section-head h2,.method h2,.about h2{font-size:clamp(42px,6vw,82px);letter-spacing:-.06em;line-height:.94;font-weight:600;margin:0}.intro-text{align-self:end;font-size:17px;color:#5a5753}.intro-text p{margin:0 0 18px}.arrow-link{display:inline-block;margin-top:12px;border-bottom:1px solid var(--ink);padding-bottom:8px}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:55px}.section-head>p{max-width:330px;color:#706e69;font-size:14px}.services{padding-bottom:12vw}.service-grid{display:grid;grid-template-columns:1fr 1fr}.service-card{min-height:390px;padding:34px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid var(--line);position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s}.service-card:hover{transform:translateY(-6px);box-shadow:0 24px 48px rgba(17,17,17,.08)}.service-card:nth-child(1),.service-card:nth-child(2){border-bottom:0}.service-card:nth-child(odd){border-right:0}.service-card h3{font-size:clamp(34px,4vw,55px);margin:15px 0 14px;letter-spacing:-.06em;line-height:.92}.service-card p{max-width:380px;color:#5c5954;font-size:14px}.service-card a{display:inline-block;margin-top:18px;font-size:10px;text-transform:uppercase;letter-spacing:.13em;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:6px}.service-label{font-size:10px;text-transform:uppercase;letter-spacing:.14em}.service-symbol{position:absolute;right:32px;top:28px;font-size:36px}.number{font-size:10px;opacity:.55}.service-dark{background:var(--ink);color:white;border-color:var(--ink)}.service-dark p{color:#b9b6af}.service-dark a{color:white}.service-pink{background:var(--pink);border-color:var(--pink)}.service-pink p{color:#27201f}.service-pink a{color:#241d1f}
.manifesto{background:#171717;color:white;min-height:630px;display:flex;align-items:center;justify-content:center;padding:80px 7vw;position:relative;overflow:hidden}.manifesto:before,.manifesto:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.13)}.manifesto:before{width:600px;height:600px;right:-170px;top:-170px}.manifesto:after{width:440px;height:440px;left:-140px;bottom:-160px}.manifesto-inner{text-align:center;position:relative;z-index:1}.manifesto-small{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#aaa7a1}.manifesto h2{font-size:clamp(64px,11vw,150px);line-height:.86;letter-spacing:-.07em;margin:18px 0 48px}.manifesto h2 em{color:var(--pink)}.manifesto-mark{font-family:var(--display);font-style:italic;font-size:28px;opacity:.88}.manifesto-mark span{font:10px var(--sans);vertical-align:top;margin-left:3px}
.method{padding-top:12vw;padding-bottom:12vw}.method-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:12vw;margin-top:30px}.method-copy p{color:#66625d;max-width:470px;font-size:15px}.steps{border-top:1px solid var(--line)}.step{display:grid;grid-template-columns:56px 1fr;gap:26px;padding:28px 0;border-bottom:1px solid var(--line)}.step>span{font-family:var(--display);font-size:28px;font-style:italic}.step h3{margin:0 0 5px;font-size:26px;letter-spacing:-.035em}.step p{margin:0;color:#6d6963;font-size:14px}
.content{padding-bottom:12vw}.content-head{align-items:center}.content-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:230px;gap:17px}.post{margin:0;position:relative;overflow:hidden;background:#ddd;min-height:0}.post img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.post:hover img{transform:scale(1.035)}.post:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.56),transparent 50%);pointer-events:none}.post figcaption{position:absolute;left:20px;right:20px;bottom:18px;z-index:1;color:white;display:flex;flex-direction:column;gap:4px}.post figcaption span{font-size:9px;text-transform:uppercase;letter-spacing:.14em;opacity:.78}.post figcaption b{font-size:15px}.post-large{grid-column:span 6;grid-row:span 2}.post:nth-child(2),.post:nth-child(3),.post:nth-child(5),.post:nth-child(6){grid-column:span 3}.post-accent{grid-column:span 3;grid-row:span 2}.post-accent img{object-position:center}.post-accent:before{content:"";position:absolute;width:100px;height:100px;border-radius:50%;border:1px solid rgba(255,255,255,.5);top:16px;right:16px;z-index:1}
.about{display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:center;padding-top:11vw;padding-bottom:12vw;background:#eceae5}.about-art{position:relative;min-height:650px}.about-frame{width:68%;aspect-ratio:.78;position:absolute;left:8%;top:9%;transform:rotate(-3.5deg);box-shadow:var(--shadow);overflow:hidden;background:white}.about-frame img{height:100%;width:100%;object-fit:cover}.about-sticker{position:absolute;right:2%;bottom:10%;width:200px;height:200px;border-radius:50%;display:flex;align-items:center;justify-content:center;text-align:center;background:var(--pink);font-size:12px;text-transform:uppercase;letter-spacing:.1em;line-height:1.35;transform:rotate(7deg);box-shadow:0 20px 40px rgba(17,17,17,.11)}.about-sticker em{font-family:var(--display);font-size:20px;display:block;text-transform:none;letter-spacing:0}.about-copy p{color:#5f5c57;font-size:16px;max-width:500px}.about-signature{margin-top:48px;border-top:1px solid var(--line);padding-top:18px;display:flex;flex-direction:column;gap:4px;width:260px}.about-signature span{font-size:9px;text-transform:uppercase;letter-spacing:.14em;color:#76726d}.about-signature strong{font-family:var(--display);font-style:italic;font-weight:500;font-size:42px}
.cta{padding-top:10vw;padding-bottom:10vw}.cta-box{background:var(--ink);color:white;min-height:720px;padding:35px 5%;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}.cta-box:before{content:"";position:absolute;width:720px;height:720px;border:1px solid rgba(255,255,255,.11);border-radius:50%;right:-260px;top:-220px}.cta-box:after{content:"";position:absolute;width:430px;height:430px;border:1px solid rgba(238,115,147,.32);border-radius:50%;left:-180px;bottom:-190px}.cta-top{display:flex;justify-content:space-between;color:#aaa69f;font-size:9px;text-transform:uppercase;letter-spacing:.16em;position:relative;z-index:1}.cta-content{position:relative;z-index:1;max-width:790px;margin-left:5%;padding:80px 0}.cta-overline{font-size:10px;text-transform:uppercase;letter-spacing:.16em;color:var(--pink)}.cta h2{font-size:clamp(58px,9vw,128px);line-height:.86;letter-spacing:-.07em;margin:22px 0}.cta h2 em{color:var(--pink)}.cta-content>p:not(.cta-overline){max-width:500px;color:#c1bdb5;font-size:15px;margin-bottom:30px}.cta-word{font-size:clamp(80px,16vw,240px);font-weight:700;letter-spacing:-.08em;color:rgba(255,255,255,.055);position:absolute;left:2%;bottom:-25px;white-space:nowrap}
.footer{padding-top:7vw;padding-bottom:30px}.footer-brand img{width:120px}.footer-brand p{font-size:12px;color:#77736e;margin:16px 0 0}.footer-links{display:flex;gap:28px;margin-top:45px;font-size:11px;text-transform:uppercase;letter-spacing:.13em}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:45px;padding-top:18px;font-size:9px;text-transform:uppercase;letter-spacing:.13em;color:#85817b}
.reveal{opacity:0;transform:translateY(26px);animation:reveal .85s ease forwards}.reveal-delay-1{animation-delay:.12s}@keyframes reveal{to{opacity:1;transform:none}}
@media(max-width:960px){.site-header{grid-template-columns:1fr auto}.nav{display:none}.hero{grid-template-columns:1fr;min-height:auto;padding-top:11vw}.hero-art{height:580px;margin-top:2vw}.hero-card-main{right:12%;width:52%}.hero-card-float{left:8%;width:31%}.intro-grid,.method-grid,.about{grid-template-columns:1fr;gap:55px}.service-grid{grid-template-columns:1fr}.service-card{border-right:1px solid var(--line)!important;border-bottom:0}.service-card:last-child{border-bottom:1px solid var(--line)}.post-large{grid-column:span 8}.post-accent{grid-column:span 4}.post:nth-child(2),.post:nth-child(3),.post:nth-child(5),.post:nth-child(6){grid-column:span 4}.about-art{min-height:580px}.cta-box{min-height:650px}}
@media(max-width:640px){.section-pad{padding-left:5.5vw;padding-right:5.5vw}.site-header{height:70px;padding:0 5.5vw}.brand img{width:72px}.header-cta{font-size:9px}.hero{padding-top:16vw}.hero h1{font-size:18vw}.hero-art{height:500px}.hero-card-main{width:61%;right:5%}.hero-card-float{width:40%;left:2%;bottom:8%}.hero-badge{font-size:8px;right:1%;bottom:3%}.hero-badge strong{font-size:15px}.hero-orbit{display:none}.hero-meta{margin-top:42px}.intro,.method,.content,.about,.cta{padding-top:18vw;padding-bottom:18vw}.intro-grid{margin-top:20px}.section-head{display:block}.section-head>p{margin-top:20px}.service-card{min-height:340px;padding:27px}.service-card h3{font-size:42px}.manifesto{min-height:520px;padding:60px 5vw}.manifesto h2{font-size:18vw}.method-grid{margin-top:20px}.step{grid-template-columns:43px 1fr;gap:15px}.step h3{font-size:23px}.content-grid{grid-template-columns:1fr 1fr;grid-auto-rows:180px;gap:10px}.post-large{grid-column:span 2;grid-row:span 2}.post-accent,.post:nth-child(2),.post:nth-child(3),.post:nth-child(5),.post:nth-child(6){grid-column:span 1;grid-row:span 1}.post figcaption{left:10px;right:8px;bottom:10px}.post figcaption b{font-size:12px}.about-art{min-height:470px}.about-frame{width:72%;left:4%}.about-sticker{width:155px;height:155px;font-size:9px;right:0;bottom:6%}.about-copy h2{font-size:17vw}.cta-box{min-height:610px;padding:25px 7%}.cta-content{margin-left:0;padding:50px 0}.cta h2{font-size:16vw}.cta-word{font-size:29vw}.footer-links{flex-wrap:wrap;gap:15px}.footer-bottom{display:block;line-height:1.8}.footer-bottom span{display:block}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee-track{animation:none}.reveal{opacity:1;transform:none;animation:none}}
/* ===== MENU MOBILE SEM JS (checkbox hack) ===== */

/* ===== ÍCONE HAMBÚRGUER ===== */
.menu-toggle-label {
  display: none; /* só aparece no mobile */
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 5px;
  width: 30px;
  height: 30px;
  cursor: pointer;
  padding: 4px;
  background: transparent;
  border: none;
}

.hamburger-line {
  display: block;
  width: 24px;
  height: 2px;
  background: var(--ink); /* cor escura, igual ao texto */
  transition: transform .3s ease, opacity .3s ease;
  border-radius: 2px; /* levemente arredondado para suavizar */
}

/* Animação para "X" quando ativo */
#menu-toggle:checked ~ .menu-toggle-label .hamburger-line:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
}
#menu-toggle:checked ~ .menu-toggle-label .hamburger-line:nth-child(2) {
  opacity: 0;
}
#menu-toggle:checked ~ .menu-toggle-label .hamburger-line:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}

/* ===== MENU MOBILE ===== */
@media (max-width: 960px) {
  .menu-toggle-label {
    display: flex;
    justify-self: end;
    order: 2; /* coloca ao lado do CTA desktop (que será escondido) */
  }

  /* Esconde o CTA do desktop no mobile */
  .header-cta {
    display: none;
  }

  /* Ajuste do grid do header */
  .site-header {
    grid-template-columns: auto 1fr auto auto;
    gap: 12px;
  }

  /* Nav padrão: escondido, vira dropdown */
  .nav {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: rgba(246, 245, 241, 0.98);
    backdrop-filter: blur(16px);
    flex-direction: column;
    padding: 20px 5vw 30px;
    border-bottom: 1px solid rgba(17, 17, 17, 0.07);
    gap: 16px;
    box-shadow: 0 20px 40px rgba(0,0,0,0.08);
    z-index: 20;
  }

  .nav a {
    font-size: 14px;
    padding: 10px 0;
    border-bottom: 1px solid rgba(17, 17, 17, 0.07);
    opacity: 1;
    text-align: left;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
  }
  .nav a:last-child {
    border-bottom: 0;
  }

  /* Estilo especial para o CTA dentro do menu */
  .nav-cta {
    color: var(--pink) !important;
    border-bottom: 1px solid var(--pink) !important;
    padding-bottom: 6px !important;
    margin-top: 8px;
    font-weight: 700;
  }
  .nav-cta span {
    font-size: 18px;
    margin-left: 5px;
  }

  /* Exibe o nav quando checkbox está marcado */
  #menu-toggle:checked ~ .nav {
    display: flex;
  }
}

@media (max-width: 640px) {
  .menu-toggle-label {
    width: 26px;
    height: 26px;
  }
  .hamburger-line {
    width: 20px;
    height: 2px;
  }
  .nav a {
    font-size: 13px;
    padding: 12px 0;
  }
}
@media (min-width: 768px) {
  .nav-cta {
    display: none;
  }
}