.mfgift{--mf-gold:#d2b04d;--mf-gold-2:#efd06a;--mf-red:#c92e33;--mf-bg:#11100f;--mf-card:#1b1917;--mf-text:#f5f1e9;--mf-muted:#aaa092;max-width:1180px;margin:0 auto;padding:clamp(40px,7vw,92px) clamp(20px,5vw,64px);color:var(--mf-text);background:radial-gradient(circle at 86% 8%,rgba(210,176,77,.12),transparent 32%),var(--mf-bg);font-family:"DM Sans","Avenir Next",sans-serif}.mfgift *{box-sizing:border-box}.mfgift-hero{max-width:780px;margin-bottom:42px}.mfgift-kicker{display:flex;align-items:center;gap:12px;color:var(--mf-gold);font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.mfgift-kicker:before{content:"";width:40px;height:1px;background:var(--mf-gold)}.mfgift h1{max-width:760px;margin:18px 0;font-family:"Playfair Display",Georgia,serif;font-size:clamp(42px,7vw,76px);font-weight:500;line-height:1.02;letter-spacing:-.035em}.mfgift p{color:var(--mf-muted);font-size:clamp(17px,2vw,20px);line-height:1.65}.mfgift fieldset{margin:0 0 34px;padding:0;border:0}.mfgift legend{width:100%;margin-bottom:18px;font-family:"Playfair Display",Georgia,serif;font-size:clamp(25px,3.5vw,38px)}.mfgift-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:24px}.mfgift-value{position:relative;display:grid;min-height:210px;padding:26px;border:1px solid rgba(210,176,77,.22);border-radius:24px;background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.015));cursor:pointer;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}.mfgift-value:hover{transform:translateY(-3px);border-color:rgba(210,176,77,.65)}.mfgift-value:has(input:checked){border-color:var(--mf-gold);box-shadow:0 18px 55px rgba(210,176,77,.14),inset 0 0 0 1px rgba(210,176,77,.35)}.mfgift-value input{position:absolute;inset:18px 18px auto auto;width:22px;height:22px;accent-color:var(--mf-gold)}.mfgift-value span,.mfgift-value small{color:var(--mf-muted)}.mfgift-value strong{align-self:center;font-family:"Playfair Display",Georgia,serif;font-size:clamp(30px,4vw,46px);font-weight:500}.mfgift-value small{align-self:end;font-size:13px;line-height:1.5}.mfgift-button{min-height:56px;padding:0 28px;border:0;border-radius:999px;background:linear-gradient(100deg,var(--mf-gold-2),var(--mf-gold));color:#17130a;font:700 16px/1 "DM Sans","Avenir Next",sans-serif;cursor:pointer;box-shadow:0 12px 34px rgba(210,176,77,.18)}.mfgift-button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.mfgift-button:focus-visible,.mfgift input:focus-visible,.mfgift textarea:focus-visible,.mfgift select:focus-visible{outline:3px solid rgba(239,208,106,.72);outline-offset:3px}.mfgift-details{padding-top:34px;border-top:1px solid rgba(255,255,255,.1)}.mfgift-details[hidden]{display:none}.mfgift-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.mfgift-field{display:grid;gap:8px}.mfgift-field span{color:#ded7cd;font-size:14px}.mfgift-field input,.mfgift-field textarea,.mfgift-field select{width:100%;min-height:50px;padding:13px 15px;border:1px solid rgba(255,255,255,.16);border-radius:12px;background:#171513;color:var(--mf-text);font:inherit}.mfgift-field select{appearance:auto}.mfgift-field textarea{min-height:108px;resize:vertical}.mfgift-wide{grid-column:1/-1}.mfgift-summary{display:flex;align-items:center;justify-content:space-between;margin:28px 0 18px;padding:22px 24px;border:1px solid rgba(210,176,77,.35);border-radius:18px;background:rgba(210,176,77,.06)}.mfgift-summary strong{font-family:"Playfair Display",Georgia,serif;font-size:30px;color:var(--mf-gold-2)}.mfgift-privacy{display:flex;align-items:flex-start;gap:12px;margin-bottom:20px;color:#ded7cd}.mfgift-privacy input{width:22px;height:22px;flex:0 0 auto;accent-color:var(--mf-gold)}.mfgift-error{padding:12px 14px;border-left:3px solid var(--mf-red);background:rgba(201,46,51,.12);color:#ffd9d9!important}.mfgift-currency-note,.mfgift-secure{max-width:660px;margin:14px 0 0!important;font-size:13px!important}.mfgift-currency-note{color:#d8cda9!important}.mfgift-confirmation{min-height:520px;display:grid;align-content:center}.mfgift-confirmation h1{font-size:clamp(38px,6vw,64px)}@media(max-width:760px){.mfgift{padding:38px 20px 56px}.mfgift-values,.mfgift-grid{grid-template-columns:1fr}.mfgift-value{min-height:172px}.mfgift-button{width:100%;justify-content:center}.mfgift-wide{grid-column:auto}.mfgift-summary{padding:18px}.mfgift-summary strong{font-size:26px}}@media(prefers-reduced-motion:reduce){.mfgift *{scroll-behavior:auto!important;transition:none!important}}
.hostinger-ai-page-title.wp-block-post-title{display:none}
.mfgift-footer-link{display:block}

/* Il tema imposta overflow-x:hidden sulle radici. Su Chromium/WebKit questo
   crea un falso scroll container e impedisce a position:sticky di agganciarsi.
   Questo foglio è caricato solo sulla pagina del buono: l'override resta isolato. */
html{overflow-x:clip!important}
body.page-id-1587{overflow-x:clip!important;overflow-y:visible!important}

/* Animazione scroll del buono: blocco autonomo adattato al plugin MFProgram. */
.mf-voucher-wrap{--mf-ink:#0a0a0c;--mf-gold:#a68540;--mf-gold-lt:#d6b266;--mf-ivory:#f3ecdf;position:relative;isolation:isolate}
.mf-voucher-wrap *{box-sizing:border-box}
.mf-voucher-stage{height:200vh;position:relative}
.mf-voucher-sticky{position:sticky;top:0;height:100vh;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr);place-items:center;perspective:1400px;perspective-origin:50% 45%;background:transparent}
.mf-voucher-scene{width:100%;min-width:0;transform-style:preserve-3d;text-align:center}
.mf-voucher-card{position:relative;width:min(76vw,900px);max-width:100%;margin:0 auto;aspect-ratio:1600/1128;will-change:transform,opacity,filter;transform-origin:50% 50%;backface-visibility:hidden}
.mf-voucher-card picture,.mf-voucher-card img{display:block;width:100%;height:100%}
.mf-voucher-card img{object-fit:contain;border-radius:2px;box-shadow:0 40px 90px rgba(0,0,0,.65),0 8px 24px rgba(0,0,0,.5)}
.mf-voucher-sheen{position:absolute;inset:0;overflow:hidden;border-radius:2px;pointer-events:none}
.mf-voucher-sheen:before{content:"";position:absolute;top:-30%;bottom:-30%;left:-30%;width:22%;background:linear-gradient(100deg,transparent,rgba(255,236,190,.55),transparent);transform:skewX(-18deg);opacity:0}
.mf-voucher-card.is-near .mf-voucher-sheen:before{animation:mf-sheen 1.25s cubic-bezier(.4,0,.2,1) .15s 1 both}
@keyframes mf-sheen{0%{left:-30%;opacity:0}15%{opacity:1}85%{opacity:1}100%{left:112%;opacity:0}}
.mf-voucher-copy{margin-top:clamp(20px,3.4vh,40px);opacity:0;transform:translateY(14px);will-change:opacity,transform}
.mf-voucher-copy .mf-eyebrow{margin:0 0 10px;color:var(--mf-gold-lt);font-size:12px;letter-spacing:.22em;text-transform:uppercase}
.mf-voucher-copy .mf-title{margin:0 0 18px;color:var(--mf-ivory);font-family:Didot,"Playfair Display",Georgia,"Times New Roman",serif;font-size:clamp(26px,3.4vw,46px);font-weight:400;line-height:1.2}
.mf-voucher-copy .mf-btn{display:inline-block;padding:13px 30px;border:1px solid var(--mf-gold);border-radius:2px;color:var(--mf-gold-lt);font-size:12px;letter-spacing:.18em;text-decoration:none;text-transform:uppercase;transition:background .25s ease,color .25s ease}
.mf-voucher-copy .mf-btn:hover{background:var(--mf-gold);color:#12100c}
.mf-voucher-copy .mf-btn:focus-visible{outline:3px solid rgba(214,178,102,.78);outline-offset:5px}
#mf-buono-acquisto{scroll-margin-top:110px}
.mf-voucher-wrap.mf-no-js .mf-voucher-stage,.mf-voucher-wrap.mf-reduced .mf-voucher-stage{height:auto}
.mf-voucher-wrap.mf-no-js .mf-voucher-sticky,.mf-voucher-wrap.mf-reduced .mf-voucher-sticky{position:static;height:auto;padding:9vh 0}
.mf-voucher-wrap.mf-no-js .mf-voucher-card,.mf-voucher-wrap.mf-reduced .mf-voucher-card{opacity:1!important;filter:none!important;transform:none!important}
.mf-voucher-wrap.mf-no-js .mf-voucher-copy,.mf-voucher-wrap.mf-reduced .mf-voucher-copy{opacity:1!important;transform:none!important}

/* Il menu del tema è fisso. Su laptop bassi il limite basato anche sui vh
   mantiene buono, titolo e CTA interamente visibili senza cambiare il mobile. */
@media(min-width:769px){.mf-voucher-sticky{padding-top:74px}.mf-voucher-card{width:min(76vw,900px,calc((100vh - 270px)*1.41844))}.mf-voucher-copy{margin-top:clamp(16px,2vh,28px)}}

/* Isolamento dal CSS globale del tema: il CTA resta conforme allo stile MFProgram. */
.mfgift form .mfgift-button,.mfgift form button.mfgift-button,.mfgift form .mfgift-submit{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:.34em!important;min-height:56px!important;padding:0 28px!important;border:0!important;border-radius:999px!important;background:linear-gradient(100deg,#efd06a,#d2b04d)!important;background-color:#d2b04d!important;color:#17130a!important;font:700 16px/1 "DM Sans","Avenir Next",sans-serif!important;letter-spacing:0!important;text-transform:none!important;text-decoration:none!important;box-shadow:0 12px 34px rgba(210,176,77,.18)!important;cursor:pointer!important;transition:transform .22s ease,box-shadow .22s ease,filter .22s ease!important;-webkit-appearance:none!important;appearance:none!important}
.mfgift form .mfgift-button:hover,.mfgift form .mfgift-submit:hover{transform:translateY(-2px)!important;filter:brightness(1.04)!important;box-shadow:0 16px 42px rgba(210,176,77,.26)!important}
.mfgift form .mfgift-button:disabled{opacity:.45!important;cursor:not-allowed!important;transform:none!important;filter:none!important;box-shadow:none!important}

@media(max-width:768px){.mf-voucher-stage{height:165vh}.mf-voucher-sticky{perspective:900px}.mf-voucher-card{width:88vw}.mf-voucher-copy{padding:0 14px}}
@media(prefers-reduced-motion:reduce){.mf-voucher-card,.mf-voucher-copy{will-change:auto}.mf-voucher-sheen{display:none}.mfgift form .mfgift-button,.mfgift form .mfgift-submit{transition:none!important}.mfgift form .mfgift-button:hover,.mfgift form .mfgift-submit:hover{transform:none!important}}
