/* Rounded surfaces, quieter borders and consistent spacing. */
:root{--surface:#fffdfb;--soft-border:#49343a12;--card-shadow:0 8px 30px #49343a09,0 1px 3px #49343a04}
body{background:#fbf7f3}
.site-header{height:78px;top:12px;width:calc(100% - 40px);margin:12px 20px 0;padding:0 3.5vw;border:1px solid #ffffffb3;border-radius:100px;box-shadow:0 7px 30px #30232b09;background:#fffcf8ed}
.site-header nav{gap:12px}
.site-header nav a{padding:9px 14px;border:0;border-radius:50px;transition:background .25s}
.site-header nav a:hover{background:#f0e3e7}
.header-buy{border:0;background:var(--plum);color:var(--cream);border-radius:50px;padding:14px 22px;box-shadow:0 5px 15px #30232b13;transition:transform .25s,background .25s}
.header-buy:hover{background:#5b3d4d;transform:translateY(-2px)}
.hero{margin:20px 2vw 0;border-radius:36px;background:radial-gradient(ellipse at 20% 0%,#513847 0%,#30232b 65%);box-shadow:0 12px 40px #49343a0b}
.hero-copy{padding-left:4vw}
.hero-visual{margin:24px 24px 24px 0}
.hero-photo{border-radius:28px}
.hero-photo-top{padding:11px 14px;border-radius:14px;background:#faf6f04d;backdrop-filter:blur(8px);right:22px;top:22px}
.photo-label{border-radius:50px;padding:6px 11px}
.floating-art{border-radius:17px;padding:8px;box-shadow:0 18px 40px #1a0d2033}
.floating-art img{border-radius:10px}
.floating-one span{margin:9px 5px 3px}
.button{border-radius:100px;padding:18px 27px;transition:transform .3s var(--ease),box-shadow .3s,background .3s}
.button.dark{background:#42303c;box-shadow:0 6px 18px #30232b12}
.button.dark:hover:not(:disabled){background:#614456}
.button.cream{box-shadow:0 5px 20px #1a0d2012}
.ribbon{margin:18px 2vw 0;border-radius:22px;background:#f1e5dc;padding-top:19px;padding-bottom:19px}
.quick-buy{border:1px solid var(--soft-border);border-radius:30px;background:var(--surface);box-shadow:var(--card-shadow);padding:30px 38px}
.quick-buy>img{border-radius:13px;box-shadow:7px 7px #f0e1e5}
.category-tabs{gap:10px}
.category-tabs button{border-radius:50px;background:#fffdf9;border-color:var(--soft-border);padding:13px 21px;box-shadow:0 2px 5px #49343a03}
.category-tabs button:hover{background:#f3e8eb}
.category-tabs .selected,.category-tabs .selected:hover{background:var(--plum);color:var(--cream);box-shadow:0 5px 14px #30232b14}
.template-grid{gap:24px;align-items:stretch}
.template-card{padding:13px 13px 22px;border:1px solid var(--soft-border);border-radius:28px;background:var(--surface);box-shadow:var(--card-shadow);transition:transform .4s var(--ease),box-shadow .4s}
.template-card:hover{transform:translateY(-7px);box-shadow:0 18px 38px #49343a13}
.template-card button{border-radius:19px;padding:22px}
.template-card button>img{border-radius:5px}
.template-card p{margin:19px 9px 6px;font-size:8px}
.template-card h3{margin:0 9px;font-size:20px}
.zoom-label{right:12px;bottom:12px;width:34px;height:34px;background:#fffdf6e8;box-shadow:0 3px 12px #30232b12;opacity:1}
.visual-break{margin:0 3vw;border-radius:34px;overflow:hidden;border:1px solid var(--soft-border);box-shadow:var(--card-shadow)}
.palette span{box-shadow:0 0 0 4px #ffffff70;margin:3px}
.feature-grid{gap:28px}
.feature-card{border-radius:30px;border-color:var(--soft-border);box-shadow:var(--card-shadow)}
.feature-card:hover{box-shadow:0 22px 45px #49343a13}
.feature-caption{padding:30px 34px 34px}
.feature-caption>span{display:inline-block;padding:5px 11px;border-radius:50px;background:#ffffff5c;letter-spacing:1px}
.plum .feature-caption>span{background:#ffffff12}
.fan img,.ebook-display button,.ebook-display button img{border-radius:10px}
.how{margin:0 3vw;border-radius:34px;border:1px solid var(--soft-border);background:var(--surface)}
.how-steps{display:grid;gap:14px}
.how-steps article{padding:25px;border:1px solid #49343a0a;border-radius:22px;background:#f7efeb;transition:transform .3s}
.how-steps article:hover{transform:translateX(5px)}
.how-steps article>span{min-width:45px}
.details-band{margin:55px 3vw 0;border-radius:34px;background:#f0e2d8}
.questions{display:grid;gap:12px;align-content:start}
.questions details,.questions details:last-child{padding:21px 24px;border:1px solid var(--soft-border);border-radius:20px;background:var(--surface);box-shadow:0 3px 16px #49343a04;transition:background .25s,box-shadow .25s}
.questions details[open]{background:#f4e9ec;box-shadow:0 6px 20px #49343a07}
.questions summary{align-items:center;gap:16px;line-height:1.6}
.questions summary:after{display:grid;place-items:center;width:28px;height:28px;flex-shrink:0;border-radius:50%;background:#eee1e6;font-family:Arial;font-size:18px}
.faq-photo{border-radius:25px}
.closing{margin:0 3vw;border-radius:36px;box-shadow:0 12px 35px #49343a10}
dialog{border:1px solid #ffffff80;border-radius:30px;box-shadow:0 40px 130px #160d2466}
dialog::backdrop{background:#261c2870;backdrop-filter:blur(8px)}
.preview-image-wrap{border-radius:29px 29px 0 0}
.preview-image-wrap img{border-radius:8px}
.dialog-close{border:0;background:#fffdf7ed;box-shadow:0 4px 14px #49343a15}
#purchaseForm>input{border-radius:13px;background:#fffcfa;border-color:#49343a24;padding:14px}
.consent input{accent-color:var(--rose)}
.receipt-card{border-radius:30px;border-color:var(--soft-border);box-shadow:var(--card-shadow)}
.legal-page{margin-top:35px;margin-bottom:35px;border-radius:30px;background:var(--surface);box-shadow:var(--card-shadow);padding:55px 45px}
@media(max-width:1100px){.site-header nav{gap:0}.site-header nav a{padding:9px 11px}.hero-copy{padding-left:4vw}.feature-caption{padding:26px}}
@media(max-width:760px){
 .site-header{height:70px;top:8px;width:calc(100% - 24px);margin:8px 12px 0;padding:0 17px;gap:12px}
 .header-buy{padding:11px 15px}
 .hero{margin:14px 12px 0;border-radius:27px}
 .hero-copy{padding:35px 6vw 24px}
 .hero-visual{margin:12px 18px 24px}
 .hero-photo{border-radius:23px}
 .hero-photo-top{font-size:7px;padding:8px 10px;top:16px;right:16px}
 .floating-art{border-radius:14px;padding:6px}
 .hero-offer .button{padding:16px 17px}
 .ribbon{margin:12px 12px 0;border-radius:18px}
 .quick-buy{border-radius:25px;padding:22px;margin-top:28px}
 .category-tabs{gap:8px}
 .category-tabs button{padding:10px 14px}
 .template-grid{gap:15px 12px}
 .template-card{padding:8px 8px 17px;border-radius:21px}
 .template-card button{padding:12px;border-radius:14px}
 .template-card p{margin:15px 5px 6px;font-size:7px}
 .template-card h3{margin:0 5px;font-size:18px}
 .zoom-label{width:26px;height:26px;right:9px;bottom:9px}
 .visual-break,.how,.details-band,.closing{margin-left:12px;margin-right:12px;border-radius:27px}
 .photo-story{min-height:320px}
 .feature-grid{gap:22px}
 .feature-card{border-radius:26px}
 .feature-caption{padding:25px}
 .how-steps article{padding:22px 19px;gap:17px;border-radius:19px}
 .how-steps article>span{min-width:35px}
 .questions details,.questions details:last-child{padding:19px 20px;border-radius:18px}
 .closing>img{height:270px}
 .mobile-purchase{border-radius:23px 23px 0 0;border-color:#ffffffa0;box-shadow:0 -7px 30px #49343a0c}
 dialog,.receipt-card{border-radius:25px}
 .legal-page{margin:25px 12px;padding:35px 24px;border-radius:25px}
}
@media(prefers-reduced-motion:reduce){.template-card:hover,.how-steps article:hover,.header-buy:hover{transform:none}}
