:root{--accent:#9B3892;--lilac-soft:#f7edf6}
header{height:auto;min-height:100px;padding:20px 4%;gap:24px}
header>.logo,header>a{flex-shrink:0}
header nav{gap:18px;font-size:14px;align-items:center}
header nav a{text-transform:uppercase;line-height:1.4;white-space:nowrap;transition:color .25s}
header nav a:hover{color:var(--accent);text-decoration:none}
header nav .home-link{font-size:14px;padding-left:16px;margin:0}
header .shop-link{color:var(--accent)}
.menu-toggle{display:none;border:0;background:transparent;width:48px;height:48px;padding:12px;position:relative}
.menu-toggle span{display:block;height:2px;width:24px;background:var(--ink);margin:6px 0;transition:transform .25s}
.hero{grid-template-columns:1fr .9fr;min-height:700px}
.hero-copy{position:relative;overflow:hidden;padding:70px 8% 70px 9%}
.hero-art.hero-carousel{padding:0;min-height:700px;display:block;background:#e3e3e5;overflow:hidden}
.carousel-slides,.carousel-slide{position:absolute;inset:0}
.carousel-slide{opacity:0;transition:opacity 1.1s ease;pointer-events:none}
.carousel-slide.is-active{opacity:1;z-index:1}
.hero-carousel .carousel-slide img{height:100%;width:100%;object-fit:contain;mix-blend-mode:normal}
.carousel-arrow,.carousel-pause{display:grid;place-items:center;color:var(--ink);border:1px solid #ffffffb3;background:#ffffffbd;backdrop-filter:blur(8px);border-radius:50%;padding:0;z-index:2;transition:background .25s,color .25s}
.carousel-arrow:hover,.carousel-pause:hover{background:white;color:var(--accent)}
.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px}
.carousel-arrow.prev{left:18px}.carousel-arrow.next{right:18px}
.carousel-arrow svg,.carousel-pause svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.carousel-controls{position:absolute;z-index:2;bottom:22px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:14px}
.carousel-dots{display:flex;align-items:center;padding:4px 10px;background:#ffffffbd;backdrop-filter:blur(8px);border-radius:30px}
.carousel-dot{width:32px;height:32px;border:0;background:transparent;position:relative;padding:0}
.carousel-dot:after{content:'';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:7px;height:7px;background:#898589;border-radius:50%;transition:width .25s,background .25s}
.carousel-dot.is-active:after{width:18px;background:var(--accent);border-radius:5px}
.carousel-pause{width:40px;height:40px}
.btn{transition:background .25s,color .25s,border-color .25s,transform .25s}
.btn:hover{background:var(--accent);border-color:var(--accent);color:white;transform:translateY(-2px)}
.card .more{transition:color .25s,border-color .25s}.card:hover .more{color:var(--accent);border-color:var(--accent)}
.filters button{transition:background .25s,border-color .25s,color .25s}.filters button:hover{border-color:var(--accent)}
.filters button.active{background:var(--accent);border-color:var(--accent)}
.about-hero{display:grid;grid-template-columns:1.5fr 1fr;gap:50px;align-items:center;padding:90px 6%;background:var(--lilac-soft);position:relative;overflow:hidden}
.about-hero h1{font-size:clamp(42px,4.6vw,72px);max-width:820px}
.about-hero p{font-size:20px;max-width:540px;color:var(--muted)}
.history-seal{justify-self:center;width:300px;height:300px;border:1px solid #9b38924d;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative;color:var(--accent)}
.history-seal:after{content:'';position:absolute;inset:14px;border:1px solid #9b389233;border-radius:50%}
.history-seal strong{font-family:Manrope,Arial,sans-serif;font-size:88px;font-weight:500;line-height:1.4;letter-spacing:-.06em}
.history-seal span{font-size:12px;letter-spacing:.18em}
.about-story{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center;position:relative;overflow:hidden}
.story-photos{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start;padding:20px 0 55px}
.story-photos img{width:100%;height:auto;aspect-ratio:2/3;object-fit:cover}
.story-photos img:first-child{transform:translateY(40px)}
.story-copy p{color:var(--muted);max-width:570px}
.quality-grid,.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}
.quality-grid article{border-top:1px solid var(--line);padding-top:25px}
.quality-grid h3,.values-grid h3{font-size:23px;letter-spacing:-.02em;line-height:1.3}
.quality-grid p,.values-grid p{color:var(--muted);max-width:360px}
.quality-icon{color:var(--accent);display:block;width:48px;height:48px;margin-bottom:22px}
.quality-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.about-values{background:var(--lilac-soft);max-width:none;position:relative;overflow:hidden}
.values-grid{margin:45px 0}
.motion-host{position:relative}
.float-icon{position:absolute;width:44px;height:44px;color:var(--accent);opacity:.24;pointer-events:none;z-index:0;animation:gentle-float 7s ease-in-out infinite}
.float-icon svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
.float-icon.first{top:22px;right:25px;transform:rotate(12deg)}
.float-icon.second{bottom:28px;left:20px;animation-delay:-3s;width:34px;height:34px}
.motion-host>div,.motion-host>h1,.motion-host>h2,.motion-host>p,.motion-host>.eyebrow,.motion-host>.btn{position:relative;z-index:1}
.hero-copy>.float-icon.second{left:auto;right:50px}
.color-feature .text{position:relative;overflow:hidden}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .8s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}
.reveal.is-visible{opacity:1;transform:translateY(0)}
@keyframes gentle-float{0%,100%{translate:0 0;rotate:-5deg}50%{translate:0 -12px;rotate:6deg}}
@media(max-width:1250px){header{justify-content:space-between;min-height:90px}.menu-toggle{display:block;margin-left:auto}header nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:20px 6% 28px;margin:0;box-shadow:0 18px 25px #0000000d;border-top:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:18px}header nav.is-open{display:flex}header nav .home-link{border-left:0;padding-left:0}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}}
@media(max-width:1000px){.hero{min-height:620px;grid-template-columns:1fr 1fr}.hero-art.hero-carousel{min-height:620px}.hero-copy{padding:50px 8%}.about-hero{grid-template-columns:1.5fr 1fr;gap:25px;padding:70px 6%}.history-seal{width:240px;height:240px}.history-seal strong{font-size:70px}.history-seal span{font-size:10px}.about-story{gap:5%}.story-photos{gap:10px}.quality-grid,.values-grid{gap:24px}}
@media(max-width:700px){header{padding:15px 5%;gap:16px;min-height:80px;flex-wrap:nowrap}header nav{width:auto;font-size:14px;order:initial}.hero{grid-template-columns:1fr}.hero-copy{padding:55px 7%}.hero-art.hero-carousel{min-height:0;aspect-ratio:2/3;max-height:none}.carousel-arrow{width:40px;height:40px}.carousel-arrow.prev{left:12px}.carousel-arrow.next{right:12px}.carousel-controls{bottom:18px}.about-hero{grid-template-columns:1fr;padding:55px 7%;gap:35px}.about-hero p{font-size:18px}.history-seal{width:230px;height:230px;justify-self:start}.about-story{grid-template-columns:1fr;gap:35px}.story-photos{max-width:500px;padding-bottom:40px;gap:15px}.quality-grid,.values-grid{grid-template-columns:1fr;gap:28px}.quality-grid article,.values-grid article{display:grid;grid-template-columns:50px 1fr;gap:0 20px;align-items:start}.quality-icon{grid-row:1/3;margin:8px 0}.quality-grid h3,.values-grid h3{margin:7px 0 10px}.quality-grid p,.values-grid p{margin:0;max-width:none}.values-grid{margin:30px 0}.float-icon{width:32px;height:32px}.float-icon.first{right:14px;top:18px}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}.float-icon{animation:none}.carousel-slide{transition:none}.btn:hover{transform:none}}

/* Benefits of each professional presentation. */
.variant-copy{padding:0 1.25rem 1.5rem}.variant .variant-copy h3{margin:0 0 .8rem;padding:0}.variant-copy p{font-size:1rem;line-height:1.65;color:var(--muted,#59545b);margin:0 0 1rem}.variant-benefits{padding-left:1.15rem;margin:0;font-size:1rem;line-height:1.6}.variant-benefits li{margin:.35rem 0}.variant-benefits li::marker{color:#9B3892}

/* Fotografias verticais completas, sem faixas laterais ou cortes. */
.hero{grid-template-columns:minmax(0,1fr) minmax(0,560px);min-height:0}
.hero-art.hero-carousel{min-height:0;aspect-ratio:2/3;align-self:start}
.carousel-slide{visibility:hidden}
.carousel-slide.is-active{visibility:visible}
.hero-carousel .carousel-slide img{object-fit:contain;object-position:center;height:100%;width:100%}
.color-feature img{object-fit:contain;padding:0;background:#181818;height:100%;max-height:640px}
@media(max-width:1000px){.hero{grid-template-columns:1fr 1fr;min-height:0}.hero-art.hero-carousel{min-height:0}}
@media(max-width:700px){.hero{grid-template-columns:1fr}.hero-art.hero-carousel{aspect-ratio:2/3}.color-feature img{height:auto;max-height:none}}

/* Apresentacoes profissionais: textos confortaveis em telas pequenas. */
.variants{min-width:0}.variant{min-width:0}.variant-copy{min-width:0;overflow-wrap:anywhere}
@media(max-width:700px){.variants{grid-template-columns:minmax(0,1fr);gap:20px}.variant{padding:14px}.variant img{height:260px;width:100%;object-fit:contain}.variant .variant-copy{padding:12px 4px 8px}.variant .variant-copy h3{font-size:1.25rem;line-height:1.35}.variant-copy p,.variant-benefits{font-size:1rem;line-height:1.65}}
