/* Refonte V53 : montages Frigia basés sur les visuels validés */
.hero-visual--basket{isolation:isolate;overflow:hidden;background:linear-gradient(145deg,#fff7d9 0%,#f9cc53 52%,#f4b22a 100%);border-radius:4px}
.hero-visual--basket .hero-basket{z-index:3;right:-9%;top:52px;width:610px;height:450px;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 30px 24px rgba(64,37,2,.22));animation:basket-rise 1.15s cubic-bezier(.2,.9,.3,1) both}
.hero-visual--basket .basket-sun{position:absolute;z-index:1;width:340px;height:340px;border-radius:50%;right:-65px;top:-75px;background:#dcebc8}
.hero-visual--basket .basket-curve{position:absolute;z-index:1;width:430px;height:200px;left:-120px;bottom:-100px;border-radius:50%;background:#fff0be}
.hero-visual--basket .note-top{right:24px;left:auto;top:30px;background:#477f43;color:#fff}
.hero-visual--basket .note-top .mini-leaf{background:rgba(255,255,255,.15);color:#fff}
.hero-visual--basket .note-bottom{right:35px;bottom:72px;left:auto}
.hero-visual--basket .hero-caption{z-index:5;padding:0 20px}
@keyframes basket-rise{from{opacity:0;transform:translateY(48px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}
.feature-screen{height:175px;margin:30px auto 18px;border-radius:24px;overflow:hidden;background:#ffffff;box-shadow:0 15px 25px rgba(34,35,20,.15);border:1px solid rgba(255,255,255,.9)}
.feature-screen img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}
.feature-card--recipe .feature-screen{background:#fcf8ed;box-shadow:0 15px 25px rgba(0,0,0,.28)}
button.arrow-link{border:0;background:transparent;cursor:pointer;padding:0;color:inherit;text-align:left}
.feature-detail{display:none;margin:-95px auto 125px;padding:31px 5.4vw;background:#18271e;color:#fff;max-width:calc(1280px - 10.8vw)}
.feature-detail.is-active{display:block;animation:detail-in .35s ease-out both}
.feature-detail h3{margin:13px 0 8px;font-size:1.7rem;letter-spacing:-.05em}.feature-detail p{max-width:600px;margin:0;color:#d4ded6;font-size:.85rem;line-height:1.6}
@keyframes detail-in{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}
.phone-story{display:grid;grid-template-columns:.85fr 1.15fr;gap:10vw;align-items:center;padding-bottom:145px}
.phone-stage{min-height:620px;position:relative;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 72% 18%,#f7d05b,transparent 33%),linear-gradient(145deg,#f8f0cf,#d9e7c8)}
.phone-stage:before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;background:#f4bb39;bottom:-180px;left:-120px;opacity:.75}
.phone-device{position:relative;z-index:3;width:260px;height:535px;overflow:hidden;border:10px solid #122019;border-radius:44px;background:#fbf8ed;box-shadow:16px 28px 0 rgba(27,40,31,.18),0 32px 44px rgba(24,29,15,.32);animation:phone-sway 7s ease-in-out infinite}
.phone-device.is-scrolling{animation:none;transform:rotate(var(--scroll-tilt,0deg)) translateY(-7px);transition:transform .2s cubic-bezier(.2,.9,.3,1)}
.phone-island{position:absolute;z-index:6;left:50%;top:10px;width:88px;height:25px;border-radius:20px;transform:translateX(-50%);background:#0a0d0a}
.phone-app{position:absolute;z-index:2;inset:0;width:100%;height:100%;object-fit:cover;object-position:top;opacity:1}
.phone-splash{position:absolute;z-index:4;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;background:#fbf8ed;color:#202b21;font-weight:900;font-size:1.5rem;letter-spacing:-.08em;animation:splash-fade 5.5s ease-in-out infinite}
.phone-splash img{width:94px;height:94px;object-fit:contain;animation:splash-pop 1.1s ease-out both}
.phone-orb{position:absolute;z-index:1;border-radius:50%}.phone-orb--one{right:40px;top:50px;width:90px;height:90px;background:#fff0b3}.phone-orb--two{left:30px;bottom:78px;width:55px;height:55px;background:#85ad65}
.phone-shadow{position:absolute;z-index:1;width:260px;height:28px;border-radius:50%;bottom:31px;background:rgba(55,42,9,.2);filter:blur(8px);animation:shadow-pulse 7s ease-in-out infinite}
@keyframes phone-sway{0%,100%{transform:rotate(-2deg) translateY(0)}50%{transform:rotate(2deg) translateY(-9px)}}
@keyframes shadow-pulse{0%,100%{transform:scale(1);opacity:.45}50%{transform:scale(.82);opacity:.22}}
@keyframes splash-fade{0%,31%{opacity:1}42%,100%{opacity:0;pointer-events:none}}
@keyframes splash-pop{0%{transform:scale(.78);opacity:0}100%{transform:scale(1);opacity:1}}
.stories-grid{grid-template-columns:1fr .85fr}.stories-grid .story--wide:last-child{grid-column:2}.stories-grid .story--wide{height:300px}
@media(max-width:800px){.hero-visual--basket{margin-top:22px}.hero-visual--basket .hero-basket{right:-27%;top:76px;width:520px;height:350px}.hero-visual--basket .basket-sun{width:280px;height:280px}.hero-visual--basket .note-top{right:14px;top:20px}.hero-visual--basket .note-bottom{right:17px;bottom:54px}.feature-screen{height:170px}.feature-detail{margin:-55px 22px 70px;padding:26px 22px}.phone-story{display:flex;flex-direction:column;gap:48px;padding-bottom:90px}.phone-stage{width:100%;min-height:590px}.phone-device{width:238px;height:490px}.stories-grid .story--wide:last-child{grid-column:auto}.stories-grid .story--wide{height:450px}}
@media(prefers-reduced-motion:reduce){.hero-visual--basket .hero-basket,.phone-device,.phone-splash,.phone-app,.phone-splash img,.phone-shadow{animation:none!important}.phone-app{opacity:1}.phone-splash{display:none}}
