.il-services-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;max-width:1200px;margin:0 auto}
@media(min-width:640px){.il-services-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.il-services-grid{grid-template-columns:repeat(3,1fr);gap:2rem}}
.il-card{display:flex;flex-direction:column;background:var(--tint);border-radius:var(--raggio-lg);overflow:hidden;text-decoration:none;color:var(--text);border:1px solid rgba(0,0,0,.04);transition:transform var(--transizione),box-shadow var(--transizione)}
.il-card:hover{transform:translateY(-8px);box-shadow:0 22px 50px rgba(0,0,0,.1)}
.il-art{position:relative;aspect-ratio:240/170;padding:1.25rem 1.25rem 0}
.il-art svg{width:100%;height:100%;display:block;overflow:visible}
.il-art .il-float{transform-box:fill-box;transform-origin:center bottom;transition:transform .6s cubic-bezier(.34,1.56,.64,1)}
.il-card:hover .il-float{transform:translateY(-6px) rotate(-1.5deg)}
.il-art .il-twinkle{transition:opacity .4s}
.il-card:hover .il-twinkle{animation:ilTwinkle 1.2s ease-in-out infinite}
@keyframes ilTwinkle{50%{opacity:.35}}
.il-body{position:relative;padding:1.25rem 1.6rem 1.6rem;display:flex;flex-direction:column;gap:.35rem;flex:1}
.il-num{font-family:'Nunito',sans-serif;font-size:.72rem;font-weight:800;letter-spacing:2px;color:var(--acc)}
.il-body h3{font-family:'Caveat',cursive;font-size:1.9rem;line-height:1.1;font-weight:700;color:var(--text)}
.il-body p{font-size:.93rem;color:var(--text-muted);line-height:1.55;flex:1}
.il-more{display:inline-flex;align-items:center;gap:.35rem;margin-top:.6rem;font-weight:800;font-size:.88rem;color:var(--acc)}
.il-more svg{transition:transform .3s}
.il-card:hover .il-more svg{transform:translateX(5px)}

.il-occasions{position:relative;overflow:hidden;padding:100px 24px;background:linear-gradient(180deg,var(--bg) 0%,#FFEBD6 100%)}
.il-occasions-inner{max-width:1200px;margin:0 auto;position:relative;z-index:1}
.il-deco{position:absolute;width:120px;pointer-events:none;opacity:.9;animation:ilBob 7s ease-in-out infinite}
.il-deco-l{left:2%;top:40px}
.il-deco-r{right:3%;bottom:30px;animation-delay:-3s}
@keyframes ilBob{50%{transform:translateY(-16px) rotate(3deg)}}
.il-occ-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
@media(min-width:900px){.il-occ-grid{grid-template-columns:repeat(4,1fr);gap:1.25rem}}
.il-occ{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:.3rem;padding:1.4rem 1.3rem;background:#fff;border-radius:var(--raggio);text-decoration:none;color:var(--text);box-shadow:0 4px 18px rgba(0,0,0,.05);overflow:hidden;transition:transform var(--transizione),box-shadow var(--transizione)}
.il-occ::after{content:'';position:absolute;right:-30px;top:-30px;width:90px;height:90px;border-radius:50%;background:var(--c);opacity:.08;transition:transform .5s,opacity .5s}
.il-occ:hover{transform:translateY(-5px);box-shadow:0 16px 36px rgba(0,0,0,.09)}
.il-occ:hover::after{transform:scale(2.2);opacity:.12}
.il-occ-ic{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;margin-bottom:.5rem;color:var(--c);background:color-mix(in srgb,var(--c) 14%,#fff);transition:transform .4s cubic-bezier(.34,1.56,.64,1)}
.il-occ:hover .il-occ-ic{transform:rotate(-8deg) scale(1.08)}
.il-occ strong{font-family:'Caveat',cursive;font-size:1.55rem;line-height:1.1}
.il-occ small{font-size:.84rem;color:var(--text-muted)}

.il-insta{overflow:hidden}
.il-insta-wrap{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr;gap:3rem;align-items:center}
@media(min-width:900px){.il-insta-wrap{grid-template-columns:1.1fr 1fr;gap:4rem}}
.il-insta-text p{color:var(--text-muted);font-size:1.02rem;line-height:1.75;max-width:460px;margin-bottom:1.2rem}
.il-handle{display:inline-block;font-weight:800;color:var(--arancione-text);margin-bottom:1.6rem;font-size:1.05rem}
.il-insta-text .btn-instagram{display:flex;width:fit-content}
.il-phone{position:relative;display:flex;flex-direction:column;gap:14px;width:min(320px,100%);margin:0 auto;padding:22px 16px 20px;background:#fff;border-radius:38px;border:10px solid #1f1a17;box-shadow:0 30px 70px rgba(44,62,122,.18);text-decoration:none;color:var(--text);transform:rotate(3deg);transition:transform var(--transizione)}
.il-phone:hover{transform:rotate(0) translateY(-6px)}
.il-phone::before{content:'';position:absolute;top:6px;left:50%;width:70px;height:6px;border-radius:9px;background:#1f1a17;transform:translateX(-50%)}
.il-phone-top{display:flex;align-items:center;gap:12px}
.il-avatar{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;font-family:'Caveat',cursive;font-size:1.9rem;font-weight:700;color:#fff;background:var(--arancione);box-shadow:0 0 0 3px #fff,0 0 0 5px #db2777}
.il-phone-name{display:flex;flex-direction:column;font-weight:800;font-size:.9rem}
.il-phone-name small{font-weight:400;color:var(--text-muted);font-size:.75rem}
.il-phone-stats{display:grid;grid-template-columns:repeat(3,1fr);text-align:center;font-size:.7rem;color:var(--text-muted);grid-auto-flow:column;grid-template-rows:auto auto}
.il-phone-stats b{font-size:.95rem;color:var(--text)}
.il-phone-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;border-radius:10px;overflow:hidden}
.il-tile{display:grid;place-items:center;aspect-ratio:1;background:var(--bg);color:#fff;background:linear-gradient(145deg,var(--bg),color-mix(in srgb,var(--bg) 70%,#000))}
.il-tile svg{transition:transform .4s}
.il-phone:hover .il-tile svg{transform:scale(1.12) rotate(-6deg)}
.il-like{position:absolute;display:grid;place-items:center;border-radius:50%;background:#fff;color:#db2777;box-shadow:0 8px 20px rgba(0,0,0,.12);animation:ilBob 5s ease-in-out infinite}
.il-like svg{fill:#db2777}
.il-like-1{width:46px;height:46px;left:-26px;top:38%}
.il-like-2{width:34px;height:34px;right:-18px;top:18%;animation-delay:-2s}

@media(max-width:639px){.il-art{aspect-ratio:auto;height:180px}}
@media(max-width:768px){.il-occasions{padding:56px 20px}.il-deco{width:70px;opacity:.5}.il-body h3{font-size:1.7rem}.il-phone{transform:none}.il-like-1{left:-8px}.il-like-2{right:-6px}}
@media(prefers-reduced-motion:reduce){.il-deco,.il-like,.il-card:hover .il-twinkle{animation:none}}

.il-show{padding:100px 24px;background:#FBF6F0;overflow:hidden}
.il-show-wrap{max-width:1150px;margin:0 auto;display:grid;grid-template-columns:1fr;gap:3rem;align-items:center}
@media(min-width:900px){.il-show-wrap{grid-template-columns:1.05fr 1fr;gap:4.5rem}}
.il-show-media{position:relative;display:grid;grid-template-columns:1.15fr 1fr;grid-template-rows:repeat(2,minmax(0,1fr));gap:14px;max-width:520px;margin:0 auto;width:100%}
.il-show-video{grid-row:1/3;position:relative;margin:0;border-radius:var(--raggio-lg);overflow:hidden;aspect-ratio:9/16;background:#e9dfd3;box-shadow:0 26px 60px rgba(120,90,50,.22)}
.il-show-video video{width:100%;height:100%;object-fit:cover;display:block}
.il-show-badge,.il-reel-tag{position:absolute;top:12px;left:12px;padding:4px 10px;border-radius:99px;background:rgba(255,255,255,.85);font-size:.72rem;font-weight:800;color:#1f1a17;backdrop-filter:blur(4px)}
.il-show-ph{position:relative;display:block;min-height:0;border-radius:var(--raggio);overflow:hidden;box-shadow:0 14px 34px rgba(120,90,50,.16)}
.il-show-ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s}
.il-show-ph:hover img{transform:scale(1.05)}
.il-show-ph-1{transform:rotate(2deg)}
.il-show-ph-2{transform:rotate(-2deg)}
.il-show-text p{color:var(--text-muted);font-size:1.02rem;line-height:1.75;max-width:480px;margin:1rem 0 1.2rem}
.il-show-list{list-style:none;padding:0;margin:0 0 1.8rem;display:grid;grid-template-columns:1fr 1fr;gap:.55rem 1rem;max-width:460px}
.il-show-list li{position:relative;padding-left:1.4rem;font-size:.92rem;font-weight:700}
.il-show-list li::before{content:'';position:absolute;left:0;top:.35em;width:.8em;height:.8em;border-radius:50%;background:linear-gradient(135deg,#E8C88A,#B8893C)}
.il-show-cta{display:flex;flex-wrap:wrap;align-items:center;gap:1.2rem}
.il-show-link{font-weight:800;color:var(--primary,#F28C28);text-decoration:none}
.il-phone-reel{position:relative;display:block;border-radius:12px;overflow:hidden;aspect-ratio:4/5;background:#e9dfd3}
.il-phone-reel video{width:100%;height:100%;object-fit:cover;display:block}
.il-phone-grid-sm .il-tile{aspect-ratio:1.4}
@media(max-width:768px){.il-show{padding:64px 20px}.il-show-list{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.il-show-ph-1,.il-show-ph-2{transform:none}}

.il-reelband{position:relative;margin:0 auto;max-width:1320px;min-height:clamp(420px,62vh,640px);border-radius:var(--raggio-lg);overflow:hidden;display:flex;align-items:flex-end;isolation:isolate;margin-top:40px;margin-bottom:40px;width:calc(100% - 48px)}
.il-reelband-media{position:absolute;inset:0;z-index:-2;background:#2a2320}
.il-reelband-media video{width:100%;height:100%;object-fit:cover;display:block}
.il-reelband::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(24,18,14,.78) 0%,rgba(24,18,14,.45) 45%,rgba(24,18,14,.05) 75%),linear-gradient(0deg,rgba(24,18,14,.55),transparent 55%)}
.il-reelband-text{padding:clamp(28px,5vw,64px);max-width:560px;color:#fff}
.il-reelband-text .section-label{color:#FFC48A}
.il-reelband-text h2{font-family:'Caveat',cursive;font-size:clamp(2.4rem,5vw,3.6rem);line-height:1.02;margin:.35rem 0 .8rem;color:#fff}
.il-reelband-text p{font-size:1.02rem;line-height:1.7;color:rgba(255,255,255,.88);margin-bottom:1.6rem}
.il-reelband-cta{display:flex;flex-wrap:wrap;gap:1.2rem;align-items:center}
.il-reelband-wa{color:#fff;font-weight:800;text-decoration:none;border-bottom:2px solid rgba(255,255,255,.5);padding-bottom:2px}
.il-reelband-wa:hover{border-color:#fff}
.il-vid-toggle{position:absolute;right:18px;top:18px;width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,255,255,.18);backdrop-filter:blur(6px);cursor:pointer;display:grid;place-items:center}
.il-vid-toggle span{width:12px;height:14px;border-left:4px solid #fff;border-right:4px solid #fff}
.il-vid-toggle[data-playing="0"] span{width:0;height:0;border:0;border-left:13px solid #fff;border-top:8px solid transparent;border-bottom:8px solid transparent;margin-left:4px}
.il-vid-toggle:focus-visible{outline:3px solid #FFC48A;outline-offset:2px}
@media(max-width:768px){.il-reelband{width:calc(100% - 32px);min-height:520px;margin-top:24px;margin-bottom:24px}.il-reelband::before{background:linear-gradient(0deg,rgba(24,18,14,.85) 0%,rgba(24,18,14,.4) 55%,rgba(24,18,14,.1) 100%)}}

.il-reels{padding:90px 0 100px;overflow:hidden}
.il-reels .section-header-center{padding:0 24px}
.il-reels-wrap{position:relative;max-width:1320px;margin:0 auto}
.il-reels-track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:0 24px;padding:8px 24px 20px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.il-reels-track::-webkit-scrollbar{display:none}
.il-reel{position:relative;flex:0 0 clamp(200px,22vw,260px);aspect-ratio:9/16;border-radius:22px;overflow:hidden;scroll-snap-align:start;background:#e9dfd3;box-shadow:0 18px 40px rgba(60,40,20,.16);transition:transform var(--transizione)}
.il-reel:hover{transform:translateY(-6px)}
.il-reel video{width:100%;height:100%;object-fit:cover;display:block}
.il-reel::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,0) 45%);pointer-events:none}
.il-reel-chip{position:absolute;top:12px;left:12px;z-index:1;padding:4px 10px;border-radius:99px;background:rgba(255,255,255,.88);font-size:.72rem;font-weight:800;color:#1f1a17}
.il-reel-info{position:absolute;left:14px;right:14px;bottom:14px;z-index:1;color:#fff;display:flex;flex-direction:column;gap:2px}
.il-reel-info strong{font-family:'Caveat',cursive;font-size:1.7rem;line-height:1}
.il-reel-info small{font-size:.8rem;opacity:.85}
.il-reel-info a{margin-top:10px;align-self:flex-start;padding:7px 16px;border-radius:99px;background:#25D366;color:#fff;font-weight:800;font-size:.82rem;text-decoration:none}
.il-reel-info a:hover{background:#1eb257}
.il-reels-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:46px;height:46px;border-radius:50%;border:0;background:#fff;box-shadow:0 8px 24px rgba(0,0,0,.14);font-size:1.8rem;line-height:1;color:var(--text);cursor:pointer;display:none}
.il-reels-prev{left:6px}.il-reels-next{right:6px}
@media(min-width:900px){.il-reels-nav{display:grid;place-items:center}.il-reels-track{padding:8px 64px 20px;scroll-padding:0 64px}}
@media(max-width:600px){.il-reels{padding:60px 0 70px}.il-reel{flex-basis:68vw}}

.ev25-pill{position:fixed;left:20px;bottom:24px;z-index:900;display:flex;align-items:center;gap:12px;padding:8px 18px 8px 8px;border:0;border-radius:99px;background:#fff;box-shadow:0 12px 34px rgba(0,0,0,.28);cursor:pointer;font:inherit;color:var(--text);text-align:left;animation:ev25In .6s .4s both}
.ev25-pill:hover{transform:translateY(-2px)}
.ev25-pill-num{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-family:'Playfair Display',serif;font-weight:800;font-size:1.25rem;color:#fff;background:radial-gradient(circle at 30% 25%,#E9C77B,#B8893C 70%)}
.ev25-pill-txt{display:flex;flex-direction:column;line-height:1.2}
.ev25-pill-txt b{font-size:.9rem}
.ev25-pill-txt small{font-size:.74rem;color:var(--text-muted)}
@keyframes ev25In{from{opacity:0;transform:translateY(16px)}}
.ev25-modal{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:20px;opacity:0;transition:opacity .25s}
.ev25-modal[hidden]{display:none}
.ev25-modal.is-open{opacity:1}
.ev25-backdrop{position:absolute;inset:0;background:rgba(15,10,6,.62);backdrop-filter:blur(4px)}
html.ev25-lock{overflow:hidden}
.ev25-card{position:relative;width:min(860px,100%);max-height:calc(100vh - 40px);overflow:auto;display:grid;grid-template-columns:auto 1fr;gap:2.2rem;align-items:center;padding:clamp(26px,4vw,44px);border-radius:var(--raggio-lg);background:linear-gradient(135deg,#FFF8EE 0%,#FFE9D2 100%);box-shadow:0 30px 80px rgba(0,0,0,.35);transform:translateY(14px) scale(.98);transition:transform .3s cubic-bezier(.16,1,.3,1)}
.ev25-modal.is-open .ev25-card{transform:none}
.ev25-close{position:absolute;top:12px;right:12px;z-index:2;width:40px;height:40px;border-radius:50%;border:0;background:rgba(90,62,27,.1);color:#5a3e1b;font-size:1.6rem;line-height:1;cursor:pointer}
.ev25-close:hover{background:rgba(90,62,27,.18)}
.ev25-confetti{position:absolute;inset:0;pointer-events:none;opacity:.4;background:radial-gradient(circle,#F28C28 2px,transparent 2.5px) 8% 18%/90px 90px,radial-gradient(circle,#3FB5A9 2px,transparent 2.5px) 60% 70%/120px 110px,radial-gradient(circle,#C9A24B 2.5px,transparent 3px) 30% 40%/140px 130px}
.ev25-badge{position:relative;width:140px;height:140px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:#fff;background:radial-gradient(circle at 30% 25%,#E9C77B,#B8893C 70%);box-shadow:0 14px 30px rgba(184,137,60,.35),inset 0 -6px 0 rgba(0,0,0,.08)}
.ev25-badge strong{font-family:'Playfair Display',serif;font-size:3.2rem;line-height:1;display:block}
.ev25-badge span{font-weight:800;letter-spacing:3px;text-transform:uppercase;font-size:.75rem;line-height:1;display:block}
.ev25-body{position:relative}
.ev25-kicker{display:inline-block;padding:5px 14px;border-radius:99px;background:#F28C28;color:#fff;font-weight:800;font-size:.75rem;letter-spacing:1px;text-transform:uppercase}
.ev25-body h2{font-family:'Caveat',cursive;font-size:clamp(2rem,4vw,2.9rem);line-height:1.05;margin:.6rem 0 .5rem;color:#5a3e1b;padding-right:30px}
.ev25-body>p{color:var(--text-muted);margin-bottom:1.1rem}
.ev25-info{list-style:none;padding:0;margin:0 0 1.5rem;display:grid;gap:.55rem}
.ev25-info li{display:grid;grid-template-columns:140px 1fr;gap:1rem;align-items:baseline;padding-bottom:.55rem;border-bottom:1px dashed rgba(184,137,60,.4)}
.ev25-info li:last-child{border-bottom:0;padding-bottom:0}
.ev25-info b{color:#5a3e1b}
.ev25-info span{color:var(--text-muted);font-size:.93rem}
.ev25-cta{display:flex;flex-wrap:wrap;gap:1.1rem;align-items:center}
.ev25-link{font-weight:800;color:#B8893C;text-decoration:none;border-bottom:2px solid rgba(184,137,60,.35)}
.ev25-link:hover{border-color:#B8893C}
@media(max-width:768px){.ev25-pill{left:12px;bottom:84px;padding:6px 14px 6px 6px;max-width:calc(100vw - 104px)}.ev25-pill-txt{min-width:0}.ev25-pill-txt small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ev25-pill-num{width:38px;height:38px;font-size:1.05rem}.ev25-card{grid-template-columns:1fr;gap:1rem;padding:24px 20px}.ev25-badge{width:76px;height:76px;gap:3px}.ev25-badge strong{font-size:1.9rem}.ev25-badge span{font-size:.6rem;letter-spacing:2px}.ev25-info li{grid-template-columns:1fr;gap:.1rem}}
@media(prefers-reduced-motion:reduce){.ev25-pill{animation:none}.ev25-modal,.ev25-card{transition:none}}
