.about-story h1,.about-story h2{letter-spacing:-.055em;line-height:1.04}.about-story h1{font-size:clamp(52px,6.8vw,100px)}.about-story h2{font-size:clamp(38px,4.4vw,66px)}.about-story em{font-style:normal;color:#91846c}.about-story p{color:#77746d;line-height:1.85;max-width:48ch}.about-story .eyebrow{display:block;margin-bottom:24px}.story-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:9%;align-items:center;padding-top:70px;padding-bottom:110px}.story-intro-copy>p{margin:30px 0}.story-main-photo{width:100%;position:relative;margin:0;overflow:hidden;border-radius:46% 46% 28px 28px;aspect-ratio:4/4.6}.story-main-photo img,.story-detail-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1.3s cubic-bezier(.2,.7,.2,1)}.story-main-photo:hover img,.story-detail-photo:hover img{transform:scale(1.035)}.story-main-photo figcaption{position:absolute;bottom:0;left:0;right:0;padding:65px 30px 28px;background:linear-gradient(transparent,#161615a6);color:white;font-size:14px;letter-spacing:.03em}.story-mission{position:relative;background:#eae5dc;padding:140px 0 90px;scroll-margin-top:100px}.story-wave{position:absolute;top:-1px;left:0;width:100%;height:80px;fill:#f6f5f3}.story-mission-grid{display:grid;grid-template-columns:.85fr 1fr;gap:10%;align-items:center}.story-detail-photo{height:490px;border-radius:28px 45% 28px 28px;overflow:hidden}.story-mission h2{margin-bottom:28px}.story-values{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:32px 0}.story-values>div{border-top:1px solid #cfc6b8;padding-top:22px}.story-values i{font-size:28px;color:#85785f}.story-values h3{font-size:18px;margin:14px 0 5px}.story-values p{font-size:14px}.story-contact{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-top:110px;padding-bottom:100px}.story-contact h2{margin-bottom:28px}.story-contact .text-link{margin-top:20px}.story-form{display:grid;gap:24px;background:#fff;border:1px solid #e9e4db;border-radius:30px;padding:38px}.story-form label{display:grid;gap:10px;font-size:14px;font-weight:600}.story-form input,.story-form textarea{width:100%;border:0;border-bottom:1px solid #dcd6cc;background:#faf9f6;border-radius:8px 8px 0 0;padding:15px;font:inherit;font-weight:400;resize:vertical;transition:border-color .2s,background .2s}.story-form input:focus,.story-form textarea:focus{outline:2px solid #a79a81;outline-offset:3px;background:#fff}.story-form .story-form-note{font-size:12px;margin:0}.story-form .btn{justify-self:start}.story-home{padding-bottom:100px}.story-address{display:grid;grid-template-columns:1.1fr 1fr;gap:10%;padding:60px;border-radius:32px;background:#eae5dc;align-items:center}.story-address i.ph-map-pin{display:block;font-size:32px;color:#85785f;margin-bottom:20px}.story-address address{font-style:normal;line-height:1.8;color:#706c64;margin-bottom:24px}
@media(max-width:767px){.story-intro,.story-mission-grid,.story-contact,.story-address{grid-template-columns:1fr;gap:36px}.story-intro{padding-top:44px;padding-bottom:58px}.story-main-photo{max-height:420px}.story-mission{padding:80px 0 52px}.story-wave{height:40px}.story-detail-photo{height:280px}.story-contact{padding-top:60px;padding-bottom:55px}.story-form{padding:24px;gap:22px}.story-address{padding:30px 24px;gap:28px}.story-home{padding-bottom:55px}.story-values{gap:18px}.story-values h3{font-size:16px}}
@media(prefers-reduced-motion:reduce){.about-story img{transition:none!important;transform:none!important}}

/* Mala ilustrada: tampa articulada, verso interno e interior em camadas. */
.story-case{--open:0;position:relative;margin:0;min-width:0;height:620px;display:flex;align-items:center;justify-content:center;perspective:1500px;isolation:isolate}
.case-halo{position:absolute;width:100%;aspect-ratio:1;border-radius:50%;background:radial-gradient(ellipse,#e4ddd0,transparent 70%);z-index:-1}
.case-scene{position:relative;width:260px;height:355px;transform-style:preserve-3d;transform:translateX(calc(var(--open)*65px)) rotateX(7deg) rotateZ(calc(-5deg + var(--open)*5deg));will-change:transform}
.case-base,.case-lid,.case-front,.case-back{position:absolute;inset:0;transform-style:preserve-3d}.case-base{filter:drop-shadow(14px 24px 16px #25201930)}.case-scene svg{display:block;width:100%;height:100%}.case-lid{transform-origin:0 50%;transform:rotateY(calc(var(--open)*-155deg));will-change:transform}.case-front,.case-back{backface-visibility:hidden;-webkit-backface-visibility:hidden}.case-front{transform:translateZ(2px)}.case-back{transform:rotateY(180deg) translateZ(2px)}
.case-handle{position:absolute;top:-45px;left:34%;width:32%;height:55px;border:8px solid #393b35;border-bottom:0;border-radius:12px 12px 0 0;transform:translateZ(-4px)}.case-wheel{position:absolute;width:22px;height:35px;bottom:-20px;border-radius:9px;background:linear-gradient(90deg,#20221f,#54564e,#20221f);transform:translateZ(-4px)}.wheel-left{left:24px}.wheel-right{right:24px}
.story-case figcaption{position:absolute;bottom:20px;left:0;right:0;text-align:center}.story-case figcaption span{display:block;font-size:22px;letter-spacing:-.04em}.story-case figcaption small{display:flex;justify-content:center;align-items:center;gap:14px;margin-top:12px;font-size:12px;color:#827764}.story-case figcaption i{font-size:18px}
@media(max-width:767px){.story-case{height:460px;margin-top:0}.case-scene{width:190px;height:260px;transform:translateX(calc(var(--open)*65px)) rotateX(7deg) rotateZ(calc(-5deg + var(--open)*5deg))}.story-case figcaption{bottom:0}.story-case figcaption span{font-size:20px}}
@media(prefers-reduced-motion:reduce){.story-case{--open:1!important}.case-scene,.case-lid{will-change:auto}}

/* Onda superior do bloco Nossa casa. */
.story-address{position:relative;border-radius:0 0 32px 32px;padding-top:clamp(90px,8vw,120px)}
.story-address-wave{position:absolute;top:-1px;left:0;width:100%;height:clamp(54px,6.75vw,99px);fill:#f6f5f3;pointer-events:none}
@media(max-width:767px){.story-address{padding-top:80px;border-radius:0 0 24px 24px}.story-address-wave{height:57px}}

/* A mala do Sobre passou a ser foto real recortada, no lugar do SVG desenhado.
   A variável --open continua vindo do scroll (about-story.js): em 0 as duas peças
   estão juntas e recuadas; em 1 a frasqueira sai para a frente e a mala sobe. */
.story-case .case-peca{position:absolute;width:auto;object-fit:contain;filter:drop-shadow(0 calc(18px + 26px*var(--open)) calc(20px + 26px*var(--open)) #2b241a2e);transition:none}
.story-case .case-mala{height:76%;left:50%;top:46%;transform:translate(-50%,-50%) translateX(calc(-9% * var(--open))) translateY(calc(-4% * var(--open))) rotate(calc(-2.5deg * var(--open))) scale(calc(1 + .05 * var(--open)));z-index:2}
.story-case .case-frasqueira{height:38%;left:50%;top:70%;transform:translate(-50%,-50%) translateX(calc(62% * var(--open))) translateY(calc(16% * var(--open))) rotate(calc(3.5deg * var(--open))) scale(calc(.82 + .26 * var(--open)));opacity:calc(.25 + .75 * var(--open));z-index:3}
.story-case .case-halo{position:absolute;left:50%;top:58%;width:58%;aspect-ratio:1.5;transform:translate(-50%,-50%) scale(calc(.85 + .3 * var(--open)));background:radial-gradient(closest-side,#c8b79a55,transparent 72%);filter:blur(12px);z-index:1}
@media(max-width:767px){
 .story-case .case-mala{height:62%}
 .story-case .case-frasqueira{height:31%}
}
@media(prefers-reduced-motion:reduce){
 .story-case .case-peca{transition:none}
}

/* A mala do Sobre virou sequência de quadros raspada pelo scroll. Canvas em vez
   de <img> para não piscar a cada troca de quadro. */
.story-case[data-story-frames]{display:block;height:auto;aspect-ratio:1;perspective:none}
.story-frames-stage{position:relative;width:100%;height:100%}
.story-frames-canvas,.story-frames-poster{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:contain}
/* O poster segura a cena até os primeiros quadros chegarem, e é o que sobra
   para quem pediu menos movimento. */
.story-frames-poster{z-index:0}
.story-frames-canvas{z-index:1}
.story-case[data-story-frames] .case-halo{position:absolute;left:50%;top:58%;width:60%;aspect-ratio:1.6;transform:translate(-50%,-50%) scale(calc(.9 + .22 * var(--open,0)));background:radial-gradient(closest-side,#c8b79a4d,transparent 72%);filter:blur(14px);z-index:0}
/* Vídeo na seção Nossa Missão, no lugar da foto parada. */
.story-detail-photo video{display:block;width:100%;height:100%;object-fit:cover}
@media(prefers-reduced-motion:reduce){
 .story-frames-canvas{display:none}
}
