@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--bg:#fcf9fa;--ink:#432b39;--plum:#542c42;--muted:#7c6874;--rose:#ad637a;--line:#e9dfe4;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.6}button,a,input,select{-webkit-tap-highlight-color:transparent}button,select{font:inherit}button,a,select{touch-action:manipulation}button,a{transition:background .2s,color .2s,transform .2s}button{cursor:pointer}a{color:inherit}.wrap{width:min(1200px,calc(100% - 96px));margin-inline:auto}.site-header{height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;gap:14px;align-items:center;text-decoration:none;font-family:var(--serif);font-size:23px;line-height:1.25}.brand-mark{height:46px;width:46px;border:1px solid #cda6b6;border-radius:50%;display:grid;place-content:center;font-style:italic;font-size:33px;padding-bottom:6px;color:var(--rose)}.brand-caption{display:block;font:9px var(--sans);letter-spacing:2px;margin-top:6px;color:var(--muted)}.share-button{background:transparent;border:1px solid #cfbac4;border-radius:30px;padding:11px 19px;font-size:12px;font-weight:500}.share-button span{margin-left:14px}.share-button:hover{background:#f0e4e9}.hero{display:grid;grid-template-columns:1.25fr 1fr;gap:60px;align-items:center;min-height:590px;padding-block:66px 80px}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2.1px;color:var(--rose);margin:0 0 20px}.eyebrow>span{font-size:20px;vertical-align:middle;margin-right:8px}h1,h2,h3,p{margin-top:0}h1{font:500 clamp(48px,5.1vw,73px)/1.13 var(--serif);letter-spacing:-2.5px;margin-bottom:24px}h1 em{font-weight:400;color:var(--rose)}.intro{max-width:495px;color:var(--muted);font-size:14px;line-height:1.9;margin-bottom:28px}.primary{display:inline-flex;gap:34px;align-items:center;padding:14px 23px;background:var(--plum);color:#fff;border-radius:4px;text-decoration:none;font-size:12px}.primary:hover{background:#713e58;transform:translateY(-2px)}.hero-note{font-size:10px;color:var(--muted);margin:15px 0 0}.hero-art{height:390px;position:relative;display:grid;place-items:center;background:radial-gradient(ellipse,#f0d9e1 0,transparent 70%)}.art-orbit{position:absolute;width:320px;height:360px;border:1px solid #e2c3cf;border-radius:50% 50% 46% 46%;transform:rotate(22deg)}.wish-note{position:relative;width:255px;height:320px;background:linear-gradient(140deg,#fff,#fff8fa);border:1px solid #e8d4dc;box-shadow:8px 18px 40px #5c294416;transform:rotate(-7deg);display:flex;align-items:center;flex-direction:column;padding:27px 15px;outline:1px solid #eddee4;outline-offset:-11px}.note-eyebrow{font-size:8px;letter-spacing:2.7px;color:var(--muted)}.note-script{font:italic 31px var(--serif);margin-top:17px}.note-bottom{font-size:8px;letter-spacing:.3px;margin-top:22px;color:var(--muted)}.gift{width:122px;height:124px;position:relative;margin-top:22px}.gift-box{position:absolute;left:9px;bottom:0;width:104px;height:78px;background:linear-gradient(100deg,#dba9ba,#edcbd7);border:1px solid #ce98ad;box-shadow:4px 7px 10px #91587212}.gift-lid{position:absolute;bottom:70px;width:122px;height:19px;background:#e8bbcc;border:1px solid #ce98ad;z-index:2}.gift-ribbon{position:absolute;width:18px;height:89px;background:#a75e78;left:52px;bottom:0;z-index:3}.gift-bow:before,.gift-bow:after{content:'';position:absolute;left:25px;top:6px;width:40px;height:26px;border:7px solid #a75e78;border-radius:65% 65% 0 65%;transform:rotate(12deg)}.gift-bow:after{left:59px;transform:scaleX(-1) rotate(12deg)}.art-spark{position:absolute;color:#b78398;font-family:var(--serif);font-size:45px;z-index:2}.spark-one{top:3px;right:36px}.spark-two{bottom:46px;left:35px;font-size:29px}.art-caption{position:absolute;bottom:-15px;font-size:8px;letter-spacing:2.5px;color:var(--muted)}.collection{padding-block:34px 68px;border-top:1px solid var(--line)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.section-heading .eyebrow{margin-bottom:10px}h2{font:400 33px/1.3 var(--serif);letter-spacing:-.6px;margin-bottom:0}.total{font-size:11px;color:var(--muted);margin-bottom:5px;white-space:nowrap}.demo-note{background:#f4e9ee;border:1px solid #e9d7e0;padding:10px 15px;border-radius:4px;font-size:11px;color:#75515f;margin-top:23px;margin-bottom:0}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:28px;padding-bottom:20px;border-bottom:1px solid var(--line)}.categories{display:flex;gap:7px;flex-wrap:wrap}.chip{font-size:11px;padding:8px 14px;border:1px solid var(--line);border-radius:30px;background:transparent;color:var(--muted)}.chip[aria-pressed=true]{background:var(--plum);color:#fff;border-color:var(--plum)}.chip:hover{border-color:var(--rose)}.selects{display:flex;gap:14px}.selects label{font-size:9px;color:var(--muted);display:flex;flex-direction:column;gap:2px}.selects select{font-size:11px;color:var(--ink);padding:4px 20px 4px 0;border:0;background:transparent;max-width:180px}.results{font-size:10px;color:var(--muted);margin:15px 0}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.card{border:1px solid var(--line);background:#fff;border-radius:9px;overflow:hidden;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}.card:hover{transform:translateY(-4px);box-shadow:0 12px 25px #542c420b}.card-visual{position:relative;aspect-ratio:1.43;display:grid;place-items:center;background:var(--tile,#f3e8ed);overflow:hidden}.card-visual:after{content:'';position:absolute;border:1px solid #ffffff88;border-radius:50%;height:160px;width:160px;pointer-events:none}.card-visual img{height:100%;width:100%;object-fit:contain;position:absolute;background:#fff;padding:16px}.card-visual.has-image:after{display:none}.item-art{width:105px;height:105px;color:var(--art,#a8758c);filter:drop-shadow(3px 8px 5px #542c4212);z-index:1}.badge{position:absolute;left:13px;top:13px;z-index:2;border-radius:30px;background:#fffefa;padding:4px 10px;font-size:9px;color:#674352;border:1px solid #ead9df}.badge.received{background:#edf2eb;color:#466142}.card-body{padding:21px;display:flex;flex-direction:column;flex:1}.card-category{font-size:8px;letter-spacing:1.9px;text-transform:uppercase;color:var(--rose);margin-bottom:7px}.card h3{font:400 23px/1.3 var(--serif);margin-bottom:10px}.card-description{font-size:12px;color:var(--muted);line-height:1.8;flex:1;margin-bottom:13px}.card-note{font-size:10px;color:var(--muted);background:#faf6f8;padding:7px 9px;border-radius:3px;margin-bottom:17px}.card-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid #f0e9ec;padding-top:15px}.price{font-size:16px;font-weight:500}.price small{font-size:9px;font-weight:400;display:block;color:var(--muted)}.product-link{border:1px solid #d4bcc7;border-radius:4px;padding:8px 12px;font-size:10px;text-decoration:none;white-space:nowrap}.product-link:hover{background:var(--plum);color:white;border-color:var(--plum)}.placeholder-link{font-size:10px;color:var(--muted)}.closing{border-top:1px solid var(--line);display:flex;align-items:center;gap:32px;padding-block:43px 47px}.closing-heart{font-size:66px;color:#b58398;font-weight:400;line-height:1}.closing h2{font-size:27px;margin-bottom:10px}.closing p{font-size:12px;color:var(--muted);max-width:680px;margin-bottom:0}.closing p.small{font-size:11px;margin-top:8px}footer{padding-block:22px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:10px}footer p{margin:0}footer span{margin-left:10px;color:var(--rose)}.empty{text-align:center;padding:60px 20px}.empty>span{font-size:40px;color:var(--rose)}.empty h3{font:27px var(--serif);margin-bottom:10px}.empty p{font-size:13px;color:var(--muted)}.empty button{border:1px solid #cfbac4;background:transparent;padding:10px 16px;border-radius:5px;color:var(--ink)}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);opacity:0;background:var(--plum);color:white;padding:12px 20px;border-radius:5px;font-size:12px;pointer-events:none;transition:.2s;max-width:90vw;z-index:10}.toast.visible{opacity:1;transform:translate(-50%,0)}[hidden]{display:none!important}:focus-visible{outline:3px solid #ab637e;outline-offset:4px}.skip{position:absolute;top:10px;left:10px;background:#fff;padding:10px;z-index:20;transform:translateY(-180%)}.skip:focus{transform:translateY(0)}
@media(min-width:1500px){.hero{min-height:650px}}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.hero{gap:25px}.hero-art{transform:scale(.9)}.grid{gap:17px}.card-body{padding:17px}.card h3{font-size:21px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.site-header{height:88px}.hero{grid-template-columns:1fr;gap:10px;padding-block:45px 35px;min-height:0}.hero-copy{max-width:540px}h1{font-size:55px}.hero-art{height:300px;transform:scale(.8);margin:-15px 0 -8px}.hero-note{font-size:10px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-heading{align-items:flex-start}h2{font-size:27px}.total{padding-top:8px}.toolbar{gap:17px}.selects{width:100%;justify-content:space-between}.selects label{width:48%}.selects select{max-width:100%}.card-bottom{align-items:flex-start;flex-direction:column;gap:10px}.product-link{text-align:center;width:100%}.closing{gap:19px}.closing-heart{font-size:45px}.closing h2{font-size:24px}footer{font-size:9px}}
@media(max-width:430px){.share-button{font-size:10px;padding:9px 11px}.share-button span{margin-left:5px}.brand{font-size:20px;gap:9px}.brand-mark{width:37px;height:37px;font-size:28px}.brand-caption{font-size:7px}h1{font-size:48px}.eyebrow{font-size:9px}.grid{grid-template-columns:1fr;gap:22px}.card-visual{aspect-ratio:1.65}.card-bottom{align-items:center;flex-direction:row}.product-link{width:auto}.card-body{padding:21px}.card h3{font-size:25px}.card-description{font-size:13px}.total{display:none}.closing{align-items:flex-start}footer{flex-direction:column;gap:6px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Selettore lingua IT / EN */
.header-actions{display:flex;align-items:center;gap:20px}.language-switch{display:flex;align-items:center;gap:3px;border:1px solid var(--line);border-radius:30px;padding:3px}.language-switch button{border:0;background:transparent;color:var(--muted);font-size:10px;font-weight:600;padding:7px 10px;border-radius:20px}.language-switch button[aria-pressed="true"]{background:var(--plum);color:#fff}.language-switch button:hover{background:#f0e4e9;color:var(--plum)}
@media(max-width:600px){.header-actions{gap:8px}.language-switch button{padding:6px 8px}.share-button{max-width:145px}.site-header{gap:10px}}
@media(max-width:360px){.site-header{height:auto;min-height:88px;flex-wrap:wrap;padding-block:15px;gap:15px}.header-actions{margin-left:auto}.brand-caption{letter-spacing:1px}}

/* Stato dei regali condiviso */
.status-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-top:25px}.status-tabs button{border:1px solid #d4bcc7;padding:10px 17px;border-radius:5px;color:var(--plum);background:transparent;font-size:12px}.status-tabs button[aria-pressed="true"]{background:var(--plum);color:white}.sync-info{display:flex;align-items:center;gap:12px;margin-top:13px}.sync-info p{font-size:11px;color:var(--muted);margin:0}.sync-info button{background:white;border:1px solid #d4bcc7;border-radius:4px;padding:6px 12px;color:var(--plum);white-space:nowrap}.gift-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.gift-action{width:100%;border:1px solid var(--plum);background:var(--plum);color:white;border-radius:4px;padding:11px;font-size:12px}.gift-action:hover{background:#713e58}.release-action{border:0;background:transparent;color:var(--muted);font-size:10px;padding:5px}.gift-action:disabled,.release-action:disabled{opacity:.5;cursor:wait}.gift-thanks{font-size:12px;color:#466142}html[lang="en"] .note-script{font-size:29px}
