@font-face{font-family:BookTitle;src:url('title-italic.ttf') format('truetype');font-style:italic;font-weight:600;font-display:swap}
@font-face{font-family:BookTitle;src:url('title-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:BookBody;src:url('body.ttf') format('truetype');font-weight:400;font-display:swap}
body{font-family:BookBody,Arial,sans-serif;background:#fffaf5}
.brand,h1,h2,h3{font-family:BookTitle,Georgia,serif}
.brand{font-style:italic;font-size:22px}
.hero{position:relative;padding-top:55px;padding-bottom:100px;gap:65px}
h1{font-style:italic;font-weight:600;font-size:clamp(55px,6vw,84px);line-height:1.04;letter-spacing:-3px;color:#862b39;transform:rotate(-2deg);transform-origin:left center;margin-bottom:35px;text-shadow:1px 2px 0 #e8bcb3}
h1 em{font-style:inherit;color:#b96066}
.lead{font-size:17px;line-height:1.8}
.eyebrow{letter-spacing:2px;font-size:10px}
.book-stage{background:radial-gradient(ellipse at 50% 40%,#f9eeea 0,#eed9d1 65%,#e6c6bd 100%);border-radius:48% 48% 42% 42%;transform:rotate(3deg);min-height:540px;box-shadow:inset 0 0 0 12px #fffaf560}
.book-stage:after{content:'per ogni figlio, un cuore alla volta';position:absolute;right:-22px;top:30px;max-width:150px;font-family:BookTitle,Georgia,serif;font-weight:600;font-style:italic;font-size:24px;line-height:1.25;color:#8b3444;transform:rotate(12deg);text-align:center}
.book-stage:before{color:#ab4c60;opacity:.14;font-size:490px}
.book{transform:rotate(-9deg);box-shadow:19px 25px 30px #69363e3d;width:260px;height:auto}
.book-caption{transform:rotate(-3deg);font-size:9px;bottom:24px}
.button{border-radius:40px;padding:17px 30px;box-shadow:0 6px 16px #80273512}
.strip{font-family:BookTitle,Georgia,serif;font-style:italic;text-transform:none;font-size:17px;letter-spacing:0;background:#f6ece5;border-color:#e8d7cd;gap:80px}
.intro{position:relative;padding-top:100px;padding-bottom:100px}
.intro:before{content:'♡';font-size:35px;color:#b9727a;display:block;margin-bottom:20px}
.intro h2{font-size:47px;letter-spacing:-1.1px}
.moments{background:#f0e0d8;border-radius:75px 75px 0 0}
.section-head h2{font-size:45px;letter-spacing:-1px}
.card{background:#fffaf5;border:0;border-radius:4px 4px 45px 4px;padding:30px 25px;box-shadow:0 8px 20px #76374306}
.card:nth-child(1){transform:rotate(-2deg)}.card:nth-child(2){transform:translateY(15px)}.card:nth-child(3){transform:rotate(2deg)}
.number{font-family:BookBody,Arial,sans-serif;font-size:10px;letter-spacing:1px;text-transform:uppercase}
.card h3{font-style:italic;font-weight:600;font-size:28px;line-height:1.2;color:#8b3444}
.gift-art{border-radius:50% 50% 3px 3px;transform:rotate(-3deg);background:repeating-linear-gradient(0deg,transparent,transparent 30px,#a95a6810 31px,#a95a6810 32px),#f0ded7;box-shadow:10px 12px 0 #f6ece6}
.gift-art:before{content:'con amore,';position:absolute;top:30px;left:35px;font:600 italic 25px BookTitle,Georgia,serif;color:#aa6570;transform:rotate(-6deg)}
.gift-art p{font:600 italic 23px/1.35 BookTitle,Georgia,serif;bottom:20px;color:#8b3444}
.gift h2{font-size:46px;letter-spacing:-1px}
.closing{position:relative;background:radial-gradient(ellipse at 10% 100%,#a24e5a,transparent 60%),#782837;overflow:hidden}
.closing:before,.closing:after{content:'♡';position:absolute;font:normal 210px Georgia,serif;color:#ffffff0e;pointer-events:none}.closing:before{left:4%;top:30px;transform:rotate(-20deg)}.closing:after{right:5%;bottom:-40px;transform:rotate(20deg)}
.closing h2{font-style:italic;font-weight:600;letter-spacing:-1px}
.faq h2{font-style:italic;font-weight:600;color:#862b39}
@media(min-width:1000px){.hero>div:first-child{padding-bottom:15px}}
@media(max-width:720px){.brand{font-size:19px}.hero{gap:50px;padding-top:35px;padding-bottom:60px}h1{font-size:60px;letter-spacing:-2.5px}.hero .lead{font-size:16px}.book-stage{min-height:430px;margin:0 14px}.book{width:215px}.book-stage:after{font-size:20px;right:-10px;max-width:125px;top:16px}.book-stage:before{font-size:350px}.strip{gap:16px;font-size:13px}.intro{padding-top:65px;padding-bottom:65px}.intro h2{font-size:35px}.moments{border-radius:40px 40px 0 0}.section-head h2{font-size:35px}.cards{gap:22px}.card{padding:25px}.card:nth-child(2){transform:none}.card h3{font-size:28px}.gift-art{margin:10px 15px;min-height:320px}.gift h2{font-size:37px}.closing h2{font-size:39px}.closing:before{left:-70px}.closing:after{right:-90px}}

/* Leggibilità e allineamento delle composizioni. */
h1,.book-stage,.gift-art,.card:nth-child(n){transform:none}
.lead,.hero .lead,.intro p,.gift .copy,.closing p{font-size:19px;line-height:1.75}
.card p,.gift li,details p,summary,.section-head p{font-size:18px;line-height:1.7}
.button,nav{font-size:16px}
.eyebrow,.number{font-size:13px;letter-spacing:1.6px}
.small,footer{font-size:14px}
.details{font-size:15px!important}
.card h3{font-size:32px;line-height:1.25}
.cards{align-items:stretch}
.card{padding:32px 28px;border-radius:8px 8px 35px 8px}
.book-stage{display:flex;flex-direction:column;justify-content:center;gap:28px;padding:40px 28px;min-height:0;border-radius:180px 180px 100px 100px;text-align:center}
.book-stage:after{position:static;order:-1;max-width:320px;font-size:27px;line-height:1.3;transform:none;content:'Per ogni figlio, un cuore alla volta.'}
.book-stage:before{inset:90px 0 auto;font-size:350px}
.book{transform:none;width:250px;max-width:85%;height:auto;flex-shrink:0}
.book-caption{position:static;transform:none;font-size:14px;line-height:1.5;letter-spacing:1.3px;max-width:300px}
.strip{font-size:23px;gap:40px;flex-wrap:wrap;text-align:center;padding:25px}
.gift-art{display:flex;flex-direction:column;justify-content:center;gap:15px;min-height:380px;padding:40px 25px;border-radius:150px 150px 8px 8px;text-align:center}
.gift-art:before{position:static;transform:none;font-size:28px;line-height:1.3}
.gift-art .heart{display:block;font-size:130px;line-height:1}
.gift-art p{position:static;margin:0;font-size:28px;line-height:1.4}
@media(max-width:720px){
 .hero{gap:38px}.book-stage{margin:0;padding:35px 20px;gap:24px}
 .book-stage:after{font-size:25px;max-width:290px}.book{width:230px}
 .book-caption{font-size:13px}.strip{font-size:20px;gap:15px 28px}
 .card{padding:28px 24px}.card h3{font-size:32px}
 .gift-art{margin:0;min-height:360px;padding:35px 22px}.gift-art p{font-size:26px}
 .lead,.hero .lead,.intro p,.gift .copy,.closing p{font-size:18px}
 .eyebrow,.number{font-size:12px}.brand{font-size:20px}
}
@media(max-width:400px){nav{font-size:13px}h1{font-size:52px}.strip{flex-direction:column;gap:8px}.book{width:210px}.book-stage:after{font-size:23px}.card h3{font-size:29px}}
