/* Boutique Na.Pa · vetrina editoriale dei prodotti del centro */
.boutique{--bq-lime:#67f58e;--bq-carta:#121615;--bq-linea:#2a322e;--bq-muto:#a9b4ae;max-width:1180px;margin:0 auto;overflow-x:clip}
.boutique em{font-style:italic;color:var(--bq-lime);font-weight:400}
.boutique .bq-intro{color:#b8c1bb;font-size:17px;line-height:1.7;max-width:560px;margin:0 0 24px}
.boutique figure{margin:0}

/* Apertura */
.bq-eroe{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center;min-height:min(78vh,720px);padding:30px 0 60px;border-bottom:1px solid var(--bq-linea);margin-bottom:0}
.bq-eroe h1{font-size:clamp(3rem,7.4vw,6.4rem);line-height:.98;letter-spacing:-.065em;margin:6px 0 26px}
.bq-indice{display:flex;flex-wrap:wrap;gap:8px}
.bq-indice a{display:inline-flex;gap:10px;align-items:baseline;padding:11px 16px;border:1px solid #3a4540;border-radius:100px;color:#e3eae5;text-decoration:none;font-size:14px;font-weight:600;transition:border-color .2s,background .2s}
.bq-indice a span{font-size:11px;color:var(--bq-lime);letter-spacing:.08em}
.bq-indice a:hover{border-color:var(--bq-lime);background:#16201a;color:#fff}
.bq-eroe-foto{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:500px}
.bq-slot{position:relative;aspect-ratio:4/5;overflow:hidden;background:#101513}
.bq-slot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.06);transition:opacity 1.4s ease,transform 5.5s ease-out}
.bq-slot img.bq-attiva{opacity:1;transform:scale(1)}
.bq-centro{width:min(62%,340px);border-radius:200px 200px 26px 26px;box-shadow:0 40px 90px #000a,0 0 0 1px #ffffff1c;z-index:2}
.bq-sx,.bq-dx{position:absolute;width:min(38%,210px);z-index:1;opacity:.82;filter:saturate(.9) brightness(.78);border-radius:120px 120px 20px 20px}
.bq-sx{left:2%;top:16%;transform:rotate(-8deg)}.bq-dx{right:2%;top:28%;transform:rotate(7deg)}
.bq-didascalia{position:relative;z-index:2;margin:18px 0 0;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#cfe0d5;text-align:center;transition:opacity .45s;min-height:1.6em}
.bq-didascalia.bq-cambia{opacity:0}
.bq-alone{position:absolute;width:78%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#67f58e40 0%,#67f58e14 38%,transparent 70%);filter:blur(10px);animation:bq-respiro 7s ease-in-out infinite}
@keyframes bq-respiro{0%,100%{transform:scale(.94);opacity:.8}50%{transform:scale(1.04);opacity:1}}

/* Capitoli */
.bq-capitolo{padding:80px 0 20px;scroll-margin-top:20px;margin:0}
.bq-capo{display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:start;margin-bottom:40px}
.bq-numero{font-size:clamp(4rem,9vw,7.5rem);line-height:.8;font-weight:300;letter-spacing:-.08em;color:transparent;-webkit-text-stroke:1px #4f6156}
.bq-capo h2{font-size:clamp(2.1rem,4.6vw,3.6rem);line-height:1.04;letter-spacing:-.06em;margin:4px 0 14px}
.bq-formato{font-size:11px!important;letter-spacing:.14em;text-transform:uppercase;color:var(--bq-lime)!important;margin:0 0 8px!important;line-height:1.5!important}

/* Prodotto protagonista */
.bq-protagonista{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:center;margin-bottom:70px}
.bq-foto{overflow:hidden;border-radius:24px;background:#0f1311;box-shadow:0 0 0 1px #ffffff12}
.bq-foto img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.bq-alta{aspect-ratio:4/5}
.bq-protagonista-testo h3{font-size:clamp(1.7rem,3vw,2.4rem);line-height:1.12;letter-spacing:-.05em;margin:0 0 14px}
.bq-protagonista-testo>p{color:#b8c1bb;font-size:16px;line-height:1.7}
.bq-ingredienti{list-style:none;padding:0;margin:30px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--bq-linea);border:1px solid var(--bq-linea);border-radius:20px;overflow:hidden}
.bq-ingredienti li{background:#0d1110;padding:20px 20px 18px}
.bq-ingredienti strong{display:block;font-size:2rem;line-height:1;font-weight:500;letter-spacing:-.05em;color:#f3f7f4}
.bq-ingredienti span{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--bq-lime);margin:6px 0 10px}
.bq-ingredienti p{margin:0;font-size:14px;line-height:1.6;color:#aab5af}

/* Prezzo */
.bq-prezzo{display:inline-flex;align-items:baseline;gap:10px;font-size:1.5rem;font-weight:600;letter-spacing:-.04em;color:#f5f8f6;margin-top:6px}
.bq-prezzo small{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#141a16;background:var(--bq-lime);padding:3px 8px;border-radius:100px}
.bq-banco{font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#cfd8d2;border:1px solid #3f4b44;padding:7px 12px;border-radius:100px}

/* Rituale viso */
.bq-rituale{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;align-items:stretch}
.bq-rituale-capo{background:linear-gradient(160deg,#2a1210,#120c0b 55%,#0f1712);border:1px solid #4a2a24;border-radius:24px;overflow:hidden;display:flex;flex-direction:column}
.bq-rituale-foto{aspect-ratio:16/10;overflow:hidden;position:relative}.bq-rituale-foto img{width:100%;height:100%;object-fit:cover;display:block}
.bq-rituale-foto::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 55%,#120c0b)}
.bq-rituale-testo{padding:6px 30px 30px;display:flex;flex-direction:column;gap:4px}
.bq-rituale-capo h3{font-size:1.8rem;line-height:1.12;letter-spacing:-.05em;margin:0 0 10px}
.bq-rituale-capo p:not(.occhiello){color:#c4d2c8;font-size:15px;line-height:1.65}
.bq-rituale-capo .pulsante{align-self:flex-start;margin-top:8px}
.bq-uso{font-size:14px;line-height:1.6;color:#aab5af;border-top:1px solid var(--bq-linea);padding-top:12px}
.bq-uso b{color:#e6ede8}

/* Carte prodotto */
.bq-carta{background:var(--bq-carta);border:1px solid var(--bq-linea);border-radius:24px;overflow:hidden;display:flex;flex-direction:column;min-width:0;transition:border-color .3s}
.bq-carta:hover{border-color:#4d5c53}.bq-carta:hover .bq-foto img{transform:scale(1.04)}
.bq-carta .bq-foto{border-radius:0;box-shadow:none;aspect-ratio:4/5}
.bq-carta-testo{padding:22px 22px 24px;display:flex;flex-direction:column;gap:6px;flex:1}
.bq-carta-testo h3{font-size:1.35rem;margin:0 0 4px;letter-spacing:-.04em}
.bq-carta-testo p{margin:0 0 6px;font-size:14px;line-height:1.65;color:#aab5af}
.bq-carta-testo .bq-prezzo{margin-top:auto;padding-top:10px}
.bq-segno{aspect-ratio:16/9;display:grid;place-items:center;font-size:6rem;font-weight:300;font-style:italic;color:transparent;-webkit-text-stroke:1px #567060;background:radial-gradient(circle at 30% 20%,#1d3326,#0f1412 70%)}

/* Profumi */
.bq-panorama{position:relative;border-radius:26px;overflow:hidden;box-shadow:0 0 0 1px #ffffff12;margin-bottom:22px}
.bq-panorama img{display:block;width:100%;aspect-ratio:15/8;object-fit:cover}
.bq-panorama figcaption{position:absolute;left:0;right:0;bottom:0;padding:60px 26px 20px;background:linear-gradient(transparent,#000c);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#dfe7e1}
.bq-scorri{margin-top:4px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}

/* Casa */
.bq-citazione{margin:0 0 34px;padding:6px 0 6px 26px;border-left:2px solid var(--bq-lime);max-width:760px}
.bq-citazione p{font-size:clamp(1.3rem,2.6vw,1.9rem);line-height:1.35;letter-spacing:-.035em;font-style:italic;color:#eef3ef;margin:0 0 10px}
.bq-citazione cite{font-size:12px;font-style:normal;letter-spacing:.06em;color:var(--bq-muto)}
.bq-griglia{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.bq-griglia .bq-carta .bq-foto{aspect-ratio:5/4}
.bq-griglia.bq-due{grid-template-columns:1.4fr 1fr}
.bq-due .bq-carta:first-child .bq-foto{aspect-ratio:10/9}

/* Chiusura */
.bq-chiusura{margin:90px 0 40px;padding:56px 44px;border-radius:30px;background:radial-gradient(ellipse at 85% 0%,#67f58e2e,transparent 55%),#111614;border:1px solid #2d3a33;text-align:left}
.bq-chiusura h2{font-size:clamp(2.2rem,5vw,3.8rem);line-height:1.02;letter-spacing:-.06em;margin:6px 0 16px}
.bq-chiusura .riga{margin-bottom:22px}

/* Comparsa allo scorrimento */
.bq-svela{opacity:0;transform:translateY(26px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1)}
.bq-svela.bq-visto{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.bq-svela{opacity:1;transform:none;transition:none}.bq-alone{animation:none}.bq-foto img{transition:none}}

/* Pagina iniziale: invito alla boutique, grande slide in dissolvenza */
.invito-boutique{position:relative;display:block;min-height:480px;border-radius:26px;overflow:hidden;border:1px solid #2d3a33;background:#0d1210;text-decoration:none;color:inherit;isolation:isolate}
.ib-slide{position:absolute;inset:0;z-index:0}
.ib-voce{position:absolute;inset:0;margin:0;opacity:0;transition:opacity 1.6s ease}
.ib-voce.bq-attiva{opacity:1}
.ib-voce img{position:absolute;display:block;object-fit:cover}
.ib-sfondo{inset:-40px;width:calc(100% + 80px);height:calc(100% + 80px);filter:blur(34px) saturate(1.25) brightness(.62)}
.ib-primo{top:0;right:0;bottom:0;width:46%;height:100%;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 26%);mask-image:linear-gradient(90deg,transparent 0%,#000 26%);transform:scale(1.06);transition:transform 6s ease-out}
.ib-voce.bq-attiva .ib-primo{transform:scale(1)}
.invito-boutique::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#0a0c0ce6 0%,#0a0c0cb3 30%,#0a0c0c33 50%,#0a0c0c00 62%)}
.ib-testo{position:relative;z-index:2;max-width:480px;padding:48px 44px;display:flex;flex-direction:column;justify-content:center;min-height:480px}
.ib-testo h2{font-size:clamp(2.2rem,4.4vw,3.4rem);line-height:1.02;letter-spacing:-.06em;margin:6px 0 12px}
.ib-testo p:not(.occhiello){color:#c9d3cd;font-size:16px;margin:0 0 18px}
.ib-testo .pulsante{align-self:flex-start}
.invito-boutique:hover{border-color:#4d6a57}
@media (max-width:900px){
 .bq-eroe{grid-template-columns:1fr;gap:10px;min-height:0;padding:10px 0 50px}
 .bq-eroe-foto{min-height:0;order:-1;padding:10px 0 4px}
 .bq-centro{width:min(52%,230px)}
 .bq-sx,.bq-dx{width:min(34%,150px)}
 .bq-eroe-foto{padding:20px 0 10px}
 .bq-protagonista{grid-template-columns:1fr;gap:28px}
 .bq-protagonista .bq-alta{max-width:420px}
 .bq-rituale{grid-template-columns:1fr 1fr}.bq-rituale-capo{grid-column:1/-1}
 .bq-griglia{grid-template-columns:1fr 1fr}
 .bq-scorri{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin:0 -16px;padding:0 16px 8px;scrollbar-width:none}
 .bq-scorri::-webkit-scrollbar{display:none}
 .bq-scorri .bq-carta{flex:0 0 76%;scroll-snap-align:start}
}
@media (max-width:600px){
 .bq-eroe h1{font-size:3.3rem}
 .bq-capitolo{padding-top:60px}
 .bq-capo{grid-template-columns:1fr;gap:6px;margin-bottom:28px}
 .bq-numero{font-size:4.2rem}
 .bq-ingredienti{grid-template-columns:1fr 1fr}.bq-ingredienti li{padding:16px 14px}.bq-ingredienti strong{font-size:1.6rem}
 .bq-rituale{grid-template-columns:1fr}
 .bq-griglia,.bq-griglia.bq-due{grid-template-columns:1fr}
 .bq-griglia .bq-senza-foto .bq-segno{aspect-ratio:3/1;font-size:4rem}
 .bq-panorama img{aspect-ratio:4/3}
 .bq-chiusura{padding:36px 22px;margin-top:60px}
 .invito-boutique,.ib-testo{min-height:460px}.ib-testo{justify-content:flex-end}
 .ib-sfondo{display:none}.ib-primo{inset:0;width:100%;-webkit-mask-image:none;mask-image:none}
 .invito-boutique::after{background:linear-gradient(0deg,#0a0c0c 0%,#0a0c0cf2 30%,#0a0c0c80 52%,#0a0c0c00 75%)}
 .ib-testo{padding:26px 22px}
}

/* Giochi di luce sullo sfondo */
.bq-luci{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.boutique{position:relative;z-index:1}
.bq-luce{position:absolute;border-radius:50%;opacity:.85;will-change:transform}
.bq-luce.uno{width:70vmax;height:70vmax;left:-25vmax;top:-30vmax;background:radial-gradient(circle,#67f58e30 0%,#67f58e10 35%,transparent 68%);animation:bq-deriva-a 16s ease-in-out infinite alternate}
.bq-luce.due{width:60vmax;height:60vmax;right:-22vmax;top:25vh;background:radial-gradient(circle,#f5d26b26 0%,#f5a96b0d 38%,transparent 68%);animation:bq-deriva-b 20s ease-in-out infinite alternate}
.bq-luce.tre{width:55vmax;height:55vmax;left:15vw;bottom:-35vmax;background:radial-gradient(circle,#5ee0c824 0%,#5ee0c80a 40%,transparent 70%);animation:bq-deriva-c 24s ease-in-out infinite alternate}
.bq-raggio{position:absolute;top:-50%;left:-60%;width:45%;height:200%;background:linear-gradient(90deg,transparent,#ffffff09 45%,#d9ffe414 50%,#ffffff09 55%,transparent);transform:rotate(18deg);animation:bq-raggio 11s ease-in-out infinite}
@keyframes bq-deriva-a{to{transform:translate(18vw,22vh) scale(1.15)}}
@keyframes bq-deriva-b{to{transform:translate(-20vw,-12vh) scale(.9)}}
@keyframes bq-deriva-c{to{transform:translate(12vw,-25vh) scale(1.2)}}
@keyframes bq-raggio{0%,15%{left:-60%}70%,100%{left:130%}}
@media (prefers-reduced-motion:reduce){.bq-luce,.bq-raggio{animation:none}.bq-slot img,.ib-voce,.ib-primo{transition:none}}
