.crua-v8 { --paper:#FAFAF8; --sand:#F3EEE6; --ink:#1A1814; --ink-2:#5E5852; --ink-3:#8A837B; --line:#E4DED4; --clay:#B86B45; --clay-deep:#9A5636;
  --serif:'DM Serif Display',Georgia,serif; --sans:'Inter',-apple-system,'Segoe UI',sans-serif; --ease-out:cubic-bezier(.23,1,.32,1); --g:20px;
  background:var(--paper); color:var(--ink); font:400 16px/1.65 var(--sans); }
@media (min-width:900px) { .crua-v8 { --g:48px; } }
.crua-v8 *, .crua-v8 *::before, .crua-v8 *::after { box-sizing:border-box; }
.crua-v8 img { display:block; max-width:100%; height:auto; }
.crua-v8 a { color:inherit; text-underline-offset:4px; text-decoration-thickness:1px; }
.crua-v8 h1, .crua-v8 h2, .crua-v8 h3 { font-family:var(--serif); font-weight:400; line-height:1.1; letter-spacing:-.01em; text-wrap:balance; margin:0; color:var(--ink); }
.crua-v8 p { margin:0; text-wrap:pretty; }
.crua-v8 .v8-wrap { max-width:1240px; margin:0 auto; padding:0 var(--g); }
.crua-v8 .v8-num { font-variant-numeric:tabular-nums; }
.crua-v8 .sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.crua-v8 :focus-visible { outline:2px solid var(--clay-deep); outline-offset:3px; }
.crua-v8 .v8-eyebrow { display:block; font:500 11.5px/1.4 var(--sans); letter-spacing:.18em; text-transform:uppercase; color:var(--clay-deep); margin-bottom:14px; }

.crua-v8 .v8-btn { display:inline-flex; align-items:center; justify-content:center; min-height:52px; padding:0 32px; border:0; border-radius:0; background:var(--ink); color:#fff; text-decoration:none; font:500 13px/1 var(--sans); letter-spacing:.12em; text-transform:uppercase; cursor:pointer; transition:background-color 200ms var(--ease-out), transform 120ms var(--ease-out); }
.crua-v8 .v8-btn:active { transform:scale(.97); }
@media (hover:hover) and (pointer:fine) { .crua-v8 .v8-btn:hover { background:var(--clay-deep); color:#fff; } }
.crua-v8 .v8-link { display:inline-flex; align-items:center; gap:8px; min-height:44px; font-size:15px; text-decoration:underline; }
.crua-v8 .v8-link svg { width:14px; height:14px; transition:transform 200ms var(--ease-out); }
@media (hover:hover) and (pointer:fine) { .crua-v8 .v8-link:hover svg { transform:translateX(3px); } }

/* 1. topo: foto de destino grande, texto curto */
.crua-v8 .v8-hero { display:grid; }
.crua-v8 .v8-hero-media { position:relative; overflow:hidden; background:var(--sand); aspect-ratio:1; }
.crua-v8 .v8-hero-media img { width:100%; height:100%; object-fit:cover; object-position:50% 42%; }
.crua-v8 .v8-hero-copy { padding:36px var(--g) 48px; }
.crua-v8 .v8-hero h1 { font-size:clamp(36px,9vw,68px); line-height:1.04; }
.crua-v8 .v8-hero h1 em { font-style:italic; color:var(--clay); }
.crua-v8 .v8-hero p { color:var(--ink-2); margin-top:18px; max-width:40ch; font-size:17px; }
.crua-v8 .v8-hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:8px 28px; margin-top:30px; }
@media (max-width:599px) { .crua-v8 .v8-hero-actions .v8-btn { width:100%; } }
@media (min-width:900px) {
  .crua-v8 .v8-hero { grid-template-columns:1fr 1.25fr; min-height:min(84vh,760px); }
  .crua-v8 .v8-hero-media { order:2; aspect-ratio:auto; }
  .crua-v8 .v8-hero-media img { position:absolute; inset:0; }
  .crua-v8 .v8-hero-copy { align-self:center; padding:80px 64px 80px max(var(--g), calc((100vw - 1240px) / 2 + var(--g))); }
}
@media (prefers-reduced-motion:no-preference) {
  .crua-v8 .v8-hero-media img { animation:v8-reveal 1100ms var(--ease-out) both; }
  .crua-v8 .v8-hero-copy > * { animation:v8-rise 600ms var(--ease-out) both; }
  .crua-v8 .v8-hero-copy > :nth-child(2) { animation-delay:80ms; }
  .crua-v8 .v8-hero-copy > :nth-child(3) { animation-delay:160ms; }
  .crua-v8 .v8-hero-copy > :nth-child(4) { animation-delay:240ms; }
}
@keyframes v8-reveal { from { opacity:0; transform:scale(1.05); } to { opacity:1; transform:none; } }
@keyframes v8-rise { from { opacity:0; transform:translateY(12px); } to { opacity:1; transform:none; } }

/* seções: mais respiro */
.crua-v8 .v8-sec { padding:72px 0; }
.crua-v8 .v8-sand { background:var(--sand); }
.crua-v8 .v8-head { margin-bottom:32px; max-width:620px; }
.crua-v8 .v8-head h2 { font-size:clamp(30px,5.6vw,46px); }
.crua-v8 .v8-head p { color:var(--ink-2); margin-top:12px; }
@media (min-width:900px) { .crua-v8 .v8-sec { padding:128px 0; } .crua-v8 .v8-head { margin-bottom:52px; } }

/* 2. kits: sem borda, sem selo, preço discreto */
.crua-v8 .v8-kits { display:grid; grid-auto-flow:column; grid-auto-columns:80%; gap:20px; overflow-x:auto; scroll-snap-type:x mandatory; scroll-padding-inline:var(--g); padding:0 var(--g) 6px; margin:0 calc(-1 * var(--g)); scrollbar-width:none; }
.crua-v8 .v8-kits::-webkit-scrollbar { display:none; }
.crua-v8 .v8-kit { scroll-snap-align:start; display:flex; flex-direction:column; gap:18px; text-decoration:none; }
.crua-v8 .v8-kit-txt { flex:1; display:flex; flex-direction:column; }
.crua-v8 .v8-kit-img { aspect-ratio:1; overflow:hidden; background:#fff; }
.crua-v8 .v8-kit-img img { width:100%; height:100%; object-fit:cover; transition:transform 700ms var(--ease-out); }
@media (hover:hover) and (pointer:fine) { .crua-v8 .v8-kit:hover .v8-kit-img img { transform:scale(1.03); } }
.crua-v8 .v8-kit h3 { font-size:25px; }
.crua-v8 .v8-kit-sub { color:var(--ink-2); font-size:15px; margin:6px 0 14px; }
.crua-v8 .v8-kit-meta { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:auto; padding-top:14px; border-top:1px solid var(--line); font-size:14px; color:var(--ink-2); }
.crua-v8 .v8-pieces { display:flex; align-items:center; gap:10px; }
.crua-v8 .v8-thumbs { display:flex; }
.crua-v8 .v8-thumbs img { width:26px; height:26px; border-radius:50%; object-fit:cover; background:#fff; border:2px solid var(--paper); margin-left:-7px; }
.crua-v8 .v8-thumbs img:first-child { margin-left:0; }
.crua-v8 .v8-price { color:var(--ink); font-size:15px; }
@media (min-width:900px) { .crua-v8 .v8-kits { grid-auto-flow:row; grid-template-columns:repeat(4,1fr); gap:28px; overflow:visible; margin:0; padding:0; } }

/* 3. feito à mão */
.crua-v8 .v8-mao { display:grid; gap:36px; }
.crua-v8 .v8-mao-copy h2 { font-size:clamp(30px,5.6vw,46px); }
.crua-v8 .v8-mao-copy p { color:var(--ink-2); margin-top:16px; max-width:42ch; }
.crua-v8 .v8-det { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin:0; padding:0; list-style:none; }
.crua-v8 .v8-det figure { margin:0; }
.crua-v8 .v8-det img { width:100%; aspect-ratio:3/4; object-fit:cover; background:#fff; }
.crua-v8 .v8-det figcaption { font-size:13px; line-height:1.4; color:var(--ink-2); margin-top:10px; }
@media (min-width:900px) {
  .crua-v8 .v8-mao { grid-template-columns:.85fr 2fr; align-items:center; gap:72px; }
  .crua-v8 .v8-det { gap:20px; }
  .crua-v8 .v8-det figcaption { font-size:14px; }
}

/* peças */
.crua-v8 .v8-stamp { display:grid; gap:32px; }
.crua-v8 .v8-stamp-copy h2 { font-size:clamp(30px,5.6vw,46px); }
.crua-v8 .v8-stamp-copy p { color:var(--ink-2); margin-top:14px; max-width:42ch; }
.crua-v8 .v8-chips { display:flex; flex-wrap:wrap; gap:8px; margin-top:20px; }
.crua-v8 .v8-chips a { display:inline-flex; align-items:center; min-height:40px; padding:0 16px; border:1px solid var(--line); border-radius:999px; font-size:14px; text-decoration:none; transition:border-color 200ms var(--ease-out); }
@media (hover:hover) and (pointer:fine) { .crua-v8 .v8-chips a:hover { border-color:var(--ink); } }
.crua-v8 .v8-rail { display:grid; grid-auto-flow:column; grid-auto-columns:44%; gap:14px; overflow-x:auto; scroll-snap-type:x proximity; scroll-padding-inline:var(--g); padding:0 var(--g) 6px; margin:0 calc(-1 * var(--g)); scrollbar-width:none; }
.crua-v8 .v8-rail::-webkit-scrollbar { display:none; }
.crua-v8 .v8-piece { scroll-snap-align:start; display:grid; gap:12px; text-decoration:none; }
.crua-v8 .v8-piece-img { aspect-ratio:1; background:#F0EFEC; overflow:hidden; }
.crua-v8 .v8-piece-img img { width:100%; height:100%; object-fit:cover; transition:transform 500ms var(--ease-out); }
@media (hover:hover) and (pointer:fine) { .crua-v8 .v8-piece:hover .v8-piece-img img { transform:scale(1.04); } }
.crua-v8 .v8-piece-name { font-size:15px; line-height:1.35; }
.crua-v8 .v8-piece-price { font-size:14px; color:var(--ink-2); margin-top:2px; }
@media (min-width:900px) {
  .crua-v8 .v8-stamp { grid-template-columns:.8fr 2fr; align-items:start; gap:72px; }
  .crua-v8 .v8-rail { grid-auto-flow:row; grid-template-columns:repeat(4,1fr); gap:24px 20px; overflow:visible; margin:0; padding:0; }
}

/* coleções */
.crua-v8 .v8-cols { display:grid; gap:14px; }
.crua-v8 .v8-col { position:relative; display:block; overflow:hidden; text-decoration:none; color:#fff; background:#4A433C; aspect-ratio:4/5; }
.crua-v8 .v8-col img { width:100%; height:100%; object-fit:cover; transition:transform 800ms var(--ease-out); }
.crua-v8 .v8-col::after { content:''; position:absolute; inset:0; background:linear-gradient(to top, rgba(26,24,20,.55), rgba(26,24,20,0) 50%); }
.crua-v8 .v8-col-label { position:absolute; left:22px; right:22px; bottom:20px; z-index:1; }
.crua-v8 .v8-col-label h3 { font-size:28px; color:#fff; }
.crua-v8 .v8-col-label p { font-size:14.5px; opacity:.92; margin-top:4px; }
@media (hover:hover) and (pointer:fine) { .crua-v8 .v8-col:hover img { transform:scale(1.03); } }
@media (min-width:900px) { .crua-v8 .v8-cols { grid-template-columns:repeat(3,1fr); gap:20px; } }

/* garantias: uma linha discreta */
.crua-v8 .v8-facts { display:grid; grid-template-columns:1fr 1fr; gap:20px 16px; margin-top:56px; padding:36px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.crua-v8 .v8-fact { font-size:14px; line-height:1.5; color:var(--ink-2); }
.crua-v8 .v8-fact b { display:block; font-weight:500; color:var(--ink); }
@media (min-width:900px) { .crua-v8 .v8-facts { grid-template-columns:repeat(4,1fr); text-align:center; margin-top:96px; } }

/* newsletter */
.crua-v8 .v8-news { text-align:center; }
.crua-v8 .v8-news h2 { font-size:clamp(28px,4.6vw,38px); }
.crua-v8 .v8-news p { color:var(--ink-2); margin:12px auto 0; max-width:44ch; }
.crua-v8 .v8-news form { display:flex; gap:8px; max-width:480px; margin:24px auto 0; }
.crua-v8 .v8-news input[type=email] { flex:1; min-width:0; min-height:52px; border:1px solid var(--line); background:#fff; padding:0 16px; font:inherit; border-radius:0; }
.crua-v8 .v8-news-msg { margin-top:14px; font-size:14px; }

@media (prefers-reduced-motion:reduce) { .crua-v8 *, .crua-v8 *::before, .crua-v8 *::after { transition-duration:1ms !important; animation:none !important; } }
