:root {
  --moss: #3A5F40;
  --earth-gold: #9B7A45;
  --warm-gray: #8A8178;
  --soft-black: #1A1A1A;
  --milk: #FCF9F2;
  --terracotta: #B76547;
  --terracotta-light: #D8A48F;
  --line: rgba(26,26,26,.18);
  --serif: "Instrument Serif", Georgia, serif;
  --sans: "DM Sans", Arial, sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin:0; background:var(--milk); color:var(--soft-black); font-family:var(--sans); font-weight:300; line-height:1.6; }
body.menu-open { overflow:hidden; }
a { color:inherit; }
button { font:inherit; }
.skip-link { position:fixed; left:1rem; top:-5rem; z-index:100; background:#fff; padding:.7rem 1rem; }
.skip-link:focus { top:1rem; }

.site-header { position:fixed; inset:0 0 auto; height:92px; z-index:30; display:flex; align-items:center; justify-content:space-between; padding:0 4vw; background:rgba(252,249,242,.9); backdrop-filter:blur(12px); border-bottom:1px solid rgba(26,26,26,.08); }
.brand { display:flex; flex-direction:column; align-items:center; text-decoration:none; line-height:1; }
.brand-waves { width:64px; height:15px; margin-bottom:2px; }
.brand-waves svg { width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.4; }
.brand-name { font-family:var(--serif); font-size:2rem; letter-spacing:.13em; }
.brand-tag { font-size:.5rem; letter-spacing:.16em; text-transform:uppercase; margin-top:4px; }
.main-nav { display:flex; align-items:center; gap:1.8rem; font-size:.72rem; letter-spacing:.11em; text-transform:uppercase; }
.main-nav a { text-decoration:none; padding:.5rem 0; }
.main-nav a:hover { opacity:.55; }
.nav-cta { border:1px solid var(--soft-black); padding:.75rem 1.1rem!important; }
.menu-toggle { display:none; background:none; border:0; text-transform:uppercase; letter-spacing:.1em; font-size:.75rem; }

.hero { min-height:100svh; position:relative; display:grid; place-items:center; padding:130px 8vw 6vw; overflow:hidden; background:
  radial-gradient(circle at 75% 28%, rgba(183,101,71,.17), transparent 28%),
  radial-gradient(circle at 25% 80%, rgba(58,95,64,.13), transparent 25%),
  var(--milk);
}
.hero-grain, .hero-grain:after { position:absolute; inset:0; content:""; opacity:.22; pointer-events:none; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.12'/%3E%3C/svg%3E"); }
.hero-copy { max-width:1200px; width:100%; }
.eyebrow { font-size:.67rem; letter-spacing:.19em; text-transform:uppercase; font-weight:500; margin:0 0 1.5rem; }
.hero h1 { font-family:var(--serif); font-weight:400; margin:0; line-height:.92; font-size:clamp(3.2rem,8vw,8.8rem); letter-spacing:-.035em; }
.hero-line, .hero-pause, .hero-home { display:block; }
.hero-pause { margin-top:5vh; font-style:italic; color:var(--terracotta); }
.hero-home { margin-left:20%; }
.hero-actions { display:flex; align-items:center; gap:2rem; margin-top:3.2rem; }
.hero-side { position:absolute; right:2.2vw; bottom:4vw; transform:rotate(-90deg) translateX(100%); transform-origin:right bottom; font-size:.62rem; letter-spacing:.16em; text-transform:uppercase; }
.reveal { opacity:0; transform:translateY(18px); animation:reveal .8s ease forwards; }
.delay-1{animation-delay:.15s}.delay-2{animation-delay:.35s}.delay-3{animation-delay:.75s}.delay-4{animation-delay:1.05s}.delay-5{animation-delay:1.35s}
@keyframes reveal { to { opacity:1; transform:none; } }

.button { display:inline-flex; justify-content:center; align-items:center; min-height:48px; padding:.85rem 1.35rem; border:1px solid transparent; text-decoration:none; text-transform:uppercase; letter-spacing:.12em; font-size:.68rem; font-weight:500; cursor:pointer; transition:.25s ease; }
.button:hover { transform:translateY(-2px); }
.button-dark { background:var(--soft-black); color:var(--milk); }
.button-light { background:var(--milk); color:var(--soft-black); }
.button-outline { background:transparent; border-color:currentColor; }
.text-link { font-size:.72rem; text-transform:uppercase; letter-spacing:.12em; text-underline-offset:5px; }

.split-section { position:relative; display:grid; grid-template-columns:.25fr 1fr 1fr; gap:6vw; padding:10vw 7vw; }
.terracotta { background:var(--terracotta-light); }
.cream { background:var(--milk); }
.warm-gray { background:#B9B0A7; }
.green { background:var(--moss); color:var(--milk); }
.dark { background:var(--soft-black); color:var(--milk); }
.section-index { font-family:var(--serif); font-size:1.5rem; }
.section-heading h2, .section-copy h2, .story-title h2, .science-header h2, .experiences-heading h2, .library-top h2, .faq-heading h2, .contact h2 { font-family:var(--serif); font-weight:400; font-size:clamp(2.5rem,5vw,5.5rem); line-height:.98; margin:0; letter-spacing:-.025em; }
.prose { max-width:660px; }
.prose p { margin:0 0 1.4rem; }
.section-copy h2 { font-size:clamp(2.2rem,4vw,4.2rem); margin-bottom:2.5rem; }

.pause-panel { min-height:65vh; display:grid; place-items:center; padding:10vw; background:var(--moss); color:var(--milk); text-align:center; }
.pause-panel p { font-family:var(--serif); font-size:clamp(3rem,7vw,7.5rem); line-height:.95; margin:0; }
.pause-panel em { color:#DDBB82; font-weight:400; }

.story-section { padding:10vw 7vw; }
.story-title { display:grid; grid-template-columns:1fr 2fr; margin-bottom:7vw; }
.story-grid { display:grid; grid-template-columns:.8fr 1.2fr 1fr; gap:6vw; align-items:start; }
.large-letter { font-family:var(--serif); color:var(--terracotta); font-size:20vw; line-height:.55; }
.story-grid blockquote { font-family:var(--serif); font-size:clamp(2.3rem,4vw,4.7rem); line-height:1; margin:0; padding-top:2rem; border-top:1px solid var(--line); }

.philosophy { padding:10vw 7vw; display:grid; grid-template-columns:.2fr 1.2fr 1fr; gap:6vw; }
.philosophy-intro h2 { font-family:var(--serif); font-weight:400; font-size:clamp(2.7rem,5.5vw,6rem); line-height:.95; margin:0; }
.principles { border-top:1px solid rgba(252,249,242,.25); }
.principle { width:100%; display:grid; grid-template-columns:50px 1fr; align-items:center; text-align:left; padding:1.7rem 0; border:0; border-bottom:1px solid rgba(252,249,242,.25); background:transparent; color:inherit; cursor:pointer; opacity:.5; }
.principle strong { font-family:var(--serif); font-size:2rem; font-weight:400; }
.principle.active { opacity:1; color:#DDBB82; }
.principle-text { grid-column:3; padding-top:2rem; font-family:var(--serif); font-size:1.7rem; line-height:1.2; }

.host-visual { min-height:650px; }
.photo-placeholder { height:100%; display:grid; place-items:center; background:
  linear-gradient(140deg,rgba(26,26,26,.08),transparent),
  radial-gradient(circle at 40% 30%,var(--milk),transparent 20%),
  #8C8176; color:rgba(252,249,242,.7); text-align:center; text-transform:uppercase; letter-spacing:.15em; font-size:.7rem; }
.host { grid-template-columns:.25fr 1fr 1.2fr; }

.science-section { padding:10vw 7vw; }
.science-header { display:grid; grid-template-columns:1.4fr .7fr; gap:8vw; align-items:end; margin-bottom:6vw; }
.science-note { border-left:1px solid var(--line); padding-left:2rem; }
.science-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); border-bottom:1px solid var(--line); margin-bottom:3rem; }
.science-grid article { padding:2.5rem 2rem 3rem 0; border-right:1px solid var(--line); margin-right:2rem; }
.science-grid article:last-child { border-right:0; }
.science-grid span, .experience-card>span, .mtc-grid span { font-family:var(--serif); color:var(--terracotta); }
.science-grid h3 { font-family:var(--serif); font-weight:400; font-size:2rem; margin:2.7rem 0 1rem; }

.experiences { background:var(--milk); padding:10vw 7vw; }
.experiences-heading { display:grid; grid-template-columns:1fr 1.2fr .8fr; gap:4vw; align-items:end; margin-bottom:6vw; }
.experiences-heading .eyebrow { align-self:start; }
.featured { display:grid; grid-template-columns:.2fr 1.4fr .6fr; gap:5vw; padding:7vw 5vw; margin-bottom:2rem; }
.experience-number { font-family:var(--serif); font-size:2rem; color:#DDBB82; }
.experience-main h3 { font-family:var(--serif); font-size:clamp(3.5rem,7vw,7rem); line-height:.9; font-weight:400; margin:0 0 1.5rem; }
.experience-tagline { font-family:var(--serif); font-size:2rem; }
.experience-main>p { max-width:700px; }
.benefits { display:flex; flex-wrap:wrap; gap:.6rem; margin:2.5rem 0; }
.benefits span { border:1px solid rgba(252,249,242,.35); border-radius:50px; padding:.55rem .9rem; font-size:.72rem; }
.experience-aside { border-left:1px solid rgba(252,249,242,.3); padding-left:2rem; font-size:.8rem; }
.experience-list { display:grid; grid-template-columns:1fr 1fr; gap:2rem; margin:2rem 0 8vw; }
.experience-card { min-height:480px; padding:4vw; display:flex; flex-direction:column; align-items:flex-start; }
.terracotta-card { background:var(--terracotta); color:var(--milk); }
.milk-card { background:#E8E0D5; }
.experience-card h3 { font-family:var(--serif); font-size:clamp(2.5rem,4.5vw,5rem); font-weight:400; line-height:.95; margin:3rem 0 1.5rem; }
.experience-card p { max-width:500px; }
.card-link { border:0; padding:0 0 .25rem; border-bottom:1px solid currentColor; background:none; color:inherit; cursor:pointer; margin-top:auto; }
.mtc-header { display:grid; grid-template-columns:1fr 1fr; gap:8vw; margin-bottom:4vw; }
.mtc-header h3 { font-family:var(--serif); font-size:clamp(2.8rem,5vw,5rem); font-weight:400; line-height:.95; margin:0; }
.mtc-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); }
.mtc-grid article { min-height:400px; padding:2.5rem 2rem 2rem 0; margin-right:2rem; border-right:1px solid var(--line); display:flex; flex-direction:column; align-items:flex-start; }
.mtc-grid article:last-child { border-right:0; }
.mtc-grid h4 { font-family:var(--serif); font-size:2.4rem; font-weight:400; margin:4rem 0 1rem; }
.mtc-grid .card-link { margin-top:auto; }

.conversion-band { padding:10vw 7vw; text-align:center; background:var(--earth-gold); color:var(--soft-black); }
.conversion-band p { text-transform:uppercase; letter-spacing:.14em; font-size:.72rem; }
.conversion-band h2 { font-family:var(--serif); font-size:clamp(3.2rem,7vw,7.5rem); font-weight:400; line-height:.95; margin:1rem 0 3rem; }

.testimonials { padding:10vw 7vw; }
.testimonials-heading { display:grid; grid-template-columns:1fr 2fr; margin-bottom:6vw; }
.testimonials-heading h2 { font-family:var(--serif); font-size:clamp(2.8rem,5vw,5.5rem); font-weight:400; line-height:.95; margin:0; }
.testimonials-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:5vw; }
.testimonials blockquote { margin:0; padding-top:2rem; border-top:1px solid rgba(252,249,242,.3); }
.testimonials blockquote p { font-family:var(--serif); font-size:2rem; line-height:1.15; }
.testimonials cite { font-style:normal; font-size:.65rem; text-transform:uppercase; letter-spacing:.13em; }
.placeholder-note { margin-top:5rem; opacity:.5; font-size:.72rem; }

.library { padding:10vw 7vw; }
.library-top { display:grid; grid-template-columns:1.3fr .7fr; gap:8vw; align-items:end; margin-bottom:6vw; }
.editorial-grid { display:grid; grid-template-columns:1.3fr .7fr .7fr; gap:2rem; align-items:start; }
.editorial-grid article h3 { font-family:var(--serif); font-weight:400; font-size:2.3rem; line-height:1; margin:1rem 0; }
.editorial-feature h3 { font-size:clamp(3rem,5vw,5rem)!important; }
.editorial-grid article>a { font-size:.7rem; text-transform:uppercase; letter-spacing:.12em; text-underline-offset:5px; }
.editorial-image { aspect-ratio:4/5; margin-bottom:2rem; background:#ccc; }
.editorial-feature .editorial-image { aspect-ratio:4/3; }
.abstract-one { background:linear-gradient(130deg,transparent 40%,rgba(252,249,242,.5)),radial-gradient(ellipse at 30% 60%,#BD8066 0 24%,transparent 25%),#735C51; }
.abstract-two { background:radial-gradient(circle at 45% 25%,#F4EADB 0 12%,transparent 13%),linear-gradient(165deg,#3A5F40 0 52%,#B9B0A7 53%); }
.abstract-three { background:linear-gradient(100deg,rgba(26,26,26,.3),transparent),radial-gradient(ellipse at 75% 55%,#B76547 0 24%,transparent 25%),#D6B978; }
.library>.button { margin-top:5rem; }

.faq { padding:10vw 7vw; display:grid; grid-template-columns:1fr 1fr; gap:8vw; }
.accordion { border-top:1px solid var(--line); }
details { border-bottom:1px solid var(--line); padding:1.3rem 0; }
summary { cursor:pointer; list-style:none; font-family:var(--serif); font-size:1.6rem; display:flex; justify-content:space-between; gap:1rem; }
summary::-webkit-details-marker { display:none; }
summary:after { content:"+"; font-family:var(--sans); }
details[open] summary:after { content:"−"; }
details p { max-width:650px; }

.contact { padding:10vw 7vw; display:grid; grid-template-columns:1.25fr .75fr; gap:8vw; }
.contact h2 { max-width:900px; }
.contact-links { border-top:1px solid rgba(252,249,242,.35); }
.contact-links a { display:flex; flex-direction:column; padding:1.4rem 0; text-decoration:none; border-bottom:1px solid rgba(252,249,242,.35); }
.contact-links span { font-size:.62rem; letter-spacing:.15em; text-transform:uppercase; opacity:.7; }
.contact-links strong { font-family:var(--serif); font-size:1.6rem; font-weight:400; }

footer { display:flex; align-items:end; justify-content:space-between; padding:4rem 7vw; background:var(--milk); font-size:.68rem; text-transform:uppercase; letter-spacing:.1em; }
.footer-brand { color:var(--moss); }
.floating-whatsapp { position:fixed; right:1.3rem; bottom:1.3rem; z-index:20; width:76px; height:76px; display:grid; place-items:center; border-radius:50%; background:var(--soft-black); color:var(--milk); text-decoration:none; text-transform:uppercase; letter-spacing:.08em; font-size:.62rem; box-shadow:0 10px 30px rgba(0,0,0,.18); }

dialog { border:0; padding:0; max-width:none; }
dialog::backdrop { background:rgba(26,26,26,.7); backdrop-filter:blur(6px); }
.survey-dialog { width:min(900px,94vw); background:var(--milk); color:var(--soft-black); padding:clamp(2rem,5vw,5rem); }
.survey-dialog h2 { font-family:var(--serif); font-size:clamp(2.2rem,4vw,4rem); line-height:1; font-weight:400; max-width:800px; }
.survey-highlight { font-family:var(--serif); font-style:italic; font-size:3rem; color:var(--terracotta); }
.dialog-close { position:absolute; top:1.5rem; right:1.5rem; border:0; background:none; font-size:2rem; cursor:pointer; }
fieldset { border:0; padding:0; margin:2rem 0; }
legend { font-size:.72rem; text-transform:uppercase; letter-spacing:.12em; margin-bottom:1rem; }
fieldset label { display:flex; gap:1rem; padding:1rem 0; border-top:1px solid var(--line); cursor:pointer; }
fieldset label:last-child { border-bottom:1px solid var(--line); }
fieldset label span { display:flex; flex-direction:column; }
fieldset input { margin-top:.5rem; accent-color:var(--moss); }
.privacy-note { font-size:.65rem; opacity:.6; }
.survey-thanks { text-align:center; padding:5vw; }
.thanks-brand { font-family:var(--serif); color:var(--moss); font-size:clamp(5rem,14vw,10rem); letter-spacing:.14em; line-height:1; }
.info-dialog { width:min(720px,92vw); padding:4rem; background:var(--milk); }
.info-dialog h2 { font-family:var(--serif); font-size:3.2rem; font-weight:400; margin:0 0 1rem; }
.info-dialog li { margin-bottom:.5rem; }

@media (max-width: 900px) {
  .site-header { height:76px; }
  .brand-tag { display:none; }
  .menu-toggle { display:block; }
  .main-nav { position:fixed; inset:76px 0 0; background:var(--milk); flex-direction:column; align-items:flex-start; padding:8vw; transform:translateX(100%); transition:.35s ease; font-family:var(--serif); font-size:2rem; text-transform:none; letter-spacing:0; }
  .main-nav.open { transform:none; }
  .nav-cta { font-family:var(--sans); font-size:.72rem; text-transform:uppercase; letter-spacing:.1em; margin-top:1rem; }
  .hero { padding-top:110px; }
  .hero h1 { font-size:clamp(3rem,13vw,6rem); }
  .hero-home { margin-left:0; }
  .hero-side { display:none; }
  .hero-actions { align-items:flex-start; flex-direction:column; }
  .split-section, .philosophy, .host, .faq, .contact { grid-template-columns:1fr; }
  .section-index { margin-bottom:2rem; }
  .story-title, .story-grid, .science-header, .experiences-heading, .mtc-header, .testimonials-heading, .library-top { grid-template-columns:1fr; }
  .large-letter { font-size:45vw; }
  .philosophy .principle-text { grid-column:1; }
  .host-visual { min-height:480px; }
  .science-grid, .mtc-grid { grid-template-columns:1fr 1fr; }
  .featured { grid-template-columns:1fr; }
  .experience-aside { border-left:0; border-top:1px solid rgba(252,249,242,.3); padding:2rem 0 0; }
  .experience-list { grid-template-columns:1fr; }
  .editorial-grid { grid-template-columns:1fr 1fr; }
  .editorial-feature { grid-column:1/-1; }
  .testimonials-grid { grid-template-columns:1fr; }
  footer { flex-direction:column; align-items:flex-start; gap:1.5rem; }
}
@media (max-width: 600px) {
  .site-header { padding:0 5vw; }
  .brand-name { font-size:1.6rem; }
  .hero, .split-section, .story-section, .philosophy, .science-section, .experiences, .testimonials, .library, .faq, .contact { padding-left:6vw; padding-right:6vw; }
  .science-grid, .mtc-grid, .editorial-grid { grid-template-columns:1fr; }
  .science-grid article, .mtc-grid article { border-right:0; margin-right:0; border-bottom:1px solid var(--line); }
  .experience-card { min-height:420px; padding:2rem; }
  .floating-whatsapp { width:62px; height:62px; }
  .info-dialog { padding:3rem 1.5rem 2rem; }
}
@media (prefers-reduced-motion: reduce) {
  * { scroll-behavior:auto!important; animation:none!important; transition:none!important; }
  .reveal { opacity:1; transform:none; }
}

.hero-values{text-align:center;width:100%}
.image-slot{margin:0 0 3rem}.image-slot-art{min-height:360px;background:linear-gradient(125deg,rgba(252,249,242,.35),transparent 45%),radial-gradient(ellipse at 70% 45%,rgba(183,101,71,.55) 0 20%,transparent 21%),linear-gradient(145deg,#70675f,#c9b8a5)}
.image-slot figcaption{margin-top:.7rem;font-size:.58rem;letter-spacing:.11em;text-transform:uppercase;opacity:.65}
.body-image .image-slot-art{min-height:420px;background:radial-gradient(ellipse at 58% 42%,#e6cbb8 0 23%,transparent 24%),linear-gradient(145deg,#8c7569,#d3c0ad)}
.numbered-story{display:grid;grid-template-columns:.25fr 1fr 1fr;gap:6vw;padding:10vw 7vw}.numbered-story .story-title{display:block;margin:0}.story-content{display:grid;gap:2rem}
.story-content blockquote{font-family:var(--serif);font-size:2.7rem;line-height:1;margin:3rem 0 0;padding-top:2rem;border-top:1px solid var(--line)}
.story-image .image-slot-art{background:radial-gradient(ellipse at 35% 55%,#c19a83 0 17%,transparent 18%),radial-gradient(ellipse at 65% 47%,#9a705c 0 18%,transparent 19%),#e3d4c4}
.principle-text{position:sticky;top:130px;align-self:start;padding-top:0}
.science-photo{margin-bottom:4vw}.science-photo .image-slot-art{min-height:520px;background:linear-gradient(110deg,rgba(26,26,26,.25),transparent),radial-gradient(ellipse at 58% 55%,#c19b84 0 22%,transparent 23%),radial-gradient(ellipse at 36% 48%,#b8866e 0 18%,transparent 19%),#6d675e}
.white-number{color:var(--milk)!important}
.testimonial-carousel{display:flex;overflow:hidden;scroll-behavior:smooth}.testimonial-card{flex:0 0 100%;padding:3rem 10vw 3rem 0!important;border-top:1px solid rgba(252,249,242,.3)}
.testimonial-card p{max-width:1050px;font-size:clamp(2rem,4.2vw,4.8rem)!important}.carousel-controls{display:flex;align-items:center;justify-content:flex-end;gap:1.4rem;margin-top:2rem}
.carousel-controls button{width:48px;height:48px;border:1px solid rgba(252,249,242,.35);border-radius:50%;background:transparent;color:var(--milk);cursor:pointer}.carousel-controls span{font-size:.68rem;letter-spacing:.13em}
.article-link{border:0;border-bottom:1px solid currentColor;padding:0 0 .25rem;background:none;font:inherit;color:inherit;cursor:pointer;font-size:.7rem;text-transform:uppercase;letter-spacing:.12em}
.article-dialog{width:min(980px,96vw);max-height:94vh;padding:clamp(2rem,6vw,6rem);background:var(--milk)}.longform{max-width:760px;margin:auto}
.longform h1{font-family:var(--serif);font-size:clamp(3rem,7vw,6.5rem);line-height:.92;font-weight:400;margin:.5rem 0 3rem}.longform h2{font-family:var(--serif);font-size:2.5rem;line-height:1;font-weight:400;margin:4rem 0 1rem}
.longform p{font-size:1.05rem;line-height:1.85}.longform .lead{font-family:var(--serif);font-size:1.8rem;line-height:1.3}.sources{border-top:1px solid var(--line);margin-top:5rem}.sources li{margin-bottom:1rem;font-size:.85rem}
@media(max-width:900px){.numbered-story{grid-template-columns:1fr}.principle-text{position:static}}


/* V3 — refinamentos aprovados */
.benefit-aside {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-self: stretch;
}

.benefit-aside h4 {
  margin: 0 0 1.5rem;
  max-width: 18rem;
  font-family: var(--serif);
  font-size: clamp(1.45rem, 2.1vw, 2.2rem);
  font-weight: 400;
  line-height: 1.05;
}

.benefit-aside .benefits {
  margin: 0;
  align-items: flex-start;
}

.testimonial-carousel {
  position: relative;
  display: block;
  overflow: hidden;
  scroll-behavior: auto;
}

.testimonial-card {
  display: none;
  opacity: 0;
  padding: 2.5rem 0 2.5rem 0 !important;
}

.testimonial-card.active {
  display: block;
  opacity: 1;
  animation: testimonialFade .75s ease both;
}

.testimonial-card p,
.testimonials .testimonial-card p {
  max-width: 780px;
  margin: 0 0 2rem;
  font-size: clamp(1.15rem, 1.75vw, 1.65rem) !important;
  line-height: 1.55;
}

@keyframes testimonialFade {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 800px) {
  .benefit-aside {
    border-top: 1px solid rgba(252,249,242,.3);
    padding-top: 2rem;
  }

  .benefit-aside h4 {
    max-width: none;
  }

  .testimonial-card p,
  .testimonials .testimonial-card p {
    font-size: 1.08rem !important;
    line-height: 1.6;
  }
}

@media (prefers-reduced-motion: reduce) {
  .testimonial-card.active {
    animation: none;
  }
}


/* V4 — refinamentos consolidados */
.philosophy.terracotta{background:var(--terracotta);color:var(--ink);grid-template-columns:minmax(250px,.8fr) minmax(320px,1fr);align-items:start}
.philosophy.terracotta .philosophy-intro h2{max-width:800px}
.philosophy.terracotta .principles{border-top:1px solid rgba(26,26,26,.25)}
.principle-item{border-bottom:1px solid rgba(26,26,26,.25)}
.philosophy.terracotta .principle{display:flex;justify-content:space-between;gap:2rem;padding:1.65rem 0;border:0;color:var(--ink);opacity:1}
.philosophy.terracotta .principle strong{font-size:clamp(1.9rem,3vw,3.2rem)}
.principle-icon{font-family:var(--sans);font-size:1.35rem;font-weight:300}
.principle-panel{padding:0 3rem 1.8rem 0;max-width:720px}
.principle-panel p{font-family:var(--serif);font-size:clamp(1.35rem,2vw,1.85rem);line-height:1.35;margin:0}
.principle-panel[hidden]{display:none}
.science-section{padding-bottom:5vw}
.experiences{padding-top:5vw}
.science-grid article{padding-top:1.6rem}
.experience.featured{grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr)}
.benefit-aside .benefits{display:flex;flex-wrap:wrap;gap:.65rem}
.benefit-aside .benefits span{margin:0}
.testimonial-card p,.testimonials .testimonial-card p{max-width:820px!important;font-size:clamp(1.45rem,2.5vw,2.65rem)!important;line-height:1.38!important}
.carousel-controls{justify-content:flex-start}
.editorial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.abstract-four{background:linear-gradient(145deg,rgba(58,95,64,.9),rgba(108,106,102,.45)),radial-gradient(circle at 70% 30%,rgba(252,249,242,.65),transparent 28%)}
@media(max-width:900px){
 .philosophy.terracotta{grid-template-columns:1fr}
 .experience.featured{grid-template-columns:1fr}
 .editorial-grid{grid-template-columns:1fr}
 .science-section{padding-bottom:12vw}.experiences{padding-top:12vw}
}

/* V4.1 — índice completo da Biblioteca */
.library-index{margin-top:3rem;border-top:1px solid rgba(26,26,26,.22)}
.library-index-item{width:100%;display:grid;grid-template-columns:minmax(150px,.45fr) minmax(0,1fr) auto;align-items:center;gap:1.5rem;padding:1.8rem 0;border:0;border-bottom:1px solid rgba(26,26,26,.22);background:transparent;color:inherit;text-align:left;cursor:pointer}
.library-index-item strong{font-family:var(--serif);font-size:clamp(1.65rem,3vw,2.7rem);font-weight:400;line-height:1.05}
.library-index-arrow{font-size:1.6rem;transition:transform .25s ease}
.library-index-item:hover .library-index-arrow,.library-index-item:focus-visible .library-index-arrow{transform:translateX(.35rem)}
@media(max-width:700px){.library-index-item{grid-template-columns:1fr auto}.library-index-item .eyebrow{grid-column:1/-1}.library-index-item strong{grid-column:1}}


/* V4.3 — fotografias autorais e ajuste da Ciência do Toque */
.image-slot img, .host-visual img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.body-image img { min-height:420px; aspect-ratio:4/5; object-position:center; }
.story-image img { min-height:420px; aspect-ratio:4/5; object-position:center; }
.host-visual { overflow:hidden; }
.host-visual img { min-height:650px; object-position:center center; }
.science-header { display:block; margin-bottom:4vw; }
.science-header > div { max-width:1000px; }
.science-feature {
  display:grid;
  grid-template-columns:minmax(320px,.72fr) minmax(280px,.48fr);
  gap:8vw;
  align-items:end;
  margin-bottom:4vw;
}
.science-feature .science-photo { margin:0; max-width:620px; }
.science-photo img { display:block; width:100%; aspect-ratio:4/5; object-fit:cover; object-position:center; }
.science-feature .science-note {
  max-width:460px;
  margin:0 0 1.25rem;
  font-family:var(--serif);
  font-size:clamp(1.35rem,2.15vw,2.1rem);
  line-height:1.35;
}
@media(max-width:900px){
  .science-feature{grid-template-columns:1fr;gap:2rem;align-items:start}
  .science-feature .science-note{margin-bottom:0}
  .host-visual img{min-height:480px}
}


/* V4.4 — capas horizontais da Biblioteca, mantendo as artes originais */
.editorial-image, .editorial-feature .editorial-image {
  aspect-ratio: 3 / 2;
  overflow: hidden;
  background: var(--milk);
}
.editorial-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media(max-width:900px){
  .editorial-image, .editorial-feature .editorial-image { aspect-ratio: 3 / 2; }
}

/* AYOMA 5.0 — aplicação da marca oficial */
.brand-logo {
  display: block;
  width: 154px;
  height: auto;
  object-fit: contain;
}
.site-header .brand {
  min-width: 154px;
}
.footer-logo {
  width: 172px;
}
@media (max-width: 720px) {
  .brand-logo { width: 132px; }
  .site-header .brand { min-width: 132px; }
  .footer-logo { width: 150px; }
}
