:root{--ink:#29253b;--purple:#6c4ab6;--pink:#ef6f91;--peach:#ffb58d;--cream:#fff9f2;--yellow:#ffd66b;--mint:#bfe7d1}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'DM Sans',sans-serif;color:var(--ink);background:#fffdfb}.nav{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,24px);background:rgba(255,253,251,.94);position:sticky;top:0;z-index:10;border-bottom:1px solid #f2e8e1}.brand{font-family:'Playfair Display',serif;font-size:24px;text-decoration:none;color:var(--ink)}.brand b,.note{color:var(--pink)}nav{display:flex;gap:28px;align-items:center}nav a{color:var(--ink);text-decoration:none;font-weight:600;font-size:14px}.pill{display:inline-block;border:0;border-radius:999px;background:linear-gradient(135deg,var(--pink),#d85ba8);color:#fff!important;text-decoration:none;padding:15px 24px;font-weight:700;box-shadow:0 9px 25px rgba(216,91,168,.22);cursor:pointer}.pill.small{padding:10px 17px}.hero{min-height:650px;padding:70px max(6vw,28px);display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:60px;background:radial-gradient(circle at 10% 20%,#fff0df,transparent 30%),radial-gradient(circle at 90% 15%,#f8e6ff,transparent 32%),#fffaf5}.eyebrow{font-size:12px;font-weight:800;letter-spacing:2px;color:var(--purple);margin-bottom:15px}.hero h1,.section h2,.occasions h2,.order h2,.cta h2{font-family:'Playfair Display',serif}.hero h1{font-size:clamp(46px,6vw,78px);line-height:.98;margin:0 0 25px}.hero h1 span{color:var(--pink);font-style:italic}.hero-copy>p{font-size:18px;line-height:1.7;max-width:620px;color:#625d6d}.actions{display:flex;gap:22px;align-items:center;margin:30px 0}.text-link{color:var(--purple);font-weight:700}.trust{display:flex;gap:20px;flex-wrap:wrap;font-size:13px;color:#746d7e}.art-card{height:500px;max-width:510px;border-radius:34px;background:linear-gradient(145deg,#ffe1ca,#f4cde7);position:relative;overflow:hidden;box-shadow:0 25px 70px rgba(76,49,85,.18)}.sun{position:absolute;width:290px;height:290px;border-radius:50%;background:#ffd46e;right:-40px;top:-45px}.record{position:absolute;width:300px;height:300px;border-radius:50%;background:repeating-radial-gradient(circle,#29253b 0 7px,#353047 8px 13px);left:55px;top:85px;box-shadow:0 22px 45px #7f607744}.record:after{content:'';position:absolute;inset:96px;border-radius:50%;background:var(--pink);border:10px solid #f39db2}.label{position:absolute;z-index:2;left:116px;top:119px;text-align:center;font-size:13px;font-weight:800;color:#fff}.float{position:absolute;font-size:34px;color:#fff;text-shadow:0 5px 15px #6e4c7144}.f1{right:52px;top:130px}.f2{right:72px;top:230px}.f3{left:35px;top:55px}.caption{position:absolute;left:35px;right:35px;bottom:25px;background:#fffdfbea;border-radius:18px;padding:17px 20px}.caption span{color:#756d79;font-size:13px}.section,.occasions,.order{padding:90px max(6vw,28px)}.section-head{text-align:center;max-width:720px;margin:0 auto 50px}.section-head h2,.order h2{font-size:42px;margin:0 0 15px}.section-head p{color:#746e78}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;max-width:1100px;margin:auto}.steps article{padding:35px;border-radius:24px;background:#fff;box-shadow:0 15px 45px #44334212;position:relative}.icon{font-size:31px}.num{position:absolute;right:28px;top:30px;font-weight:800;color:#e8dce7}.steps h3{font-size:20px}.steps p{line-height:1.65;color:#746e78}.occasions{background:#f8f2fb}.chips{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;max-width:900px;margin:auto}.chips span{background:white;padding:14px 20px;border-radius:999px;box-shadow:0 7px 20px #44334210;font-weight:600}.order{display:grid;grid-template-columns:.75fr 1.25fr;gap:60px;max-width:1250px;margin:auto}.order-intro p{line-height:1.7;color:#746e78}.quote{margin-top:30px;padding:25px;border-radius:20px;background:#fff2e9;font-family:'Playfair Display',serif;font-size:20px}.form{display:grid;grid-template-columns:1fr 1fr;gap:20px;background:#fff;padding:34px;border-radius:28px;box-shadow:0 18px 60px #3b28451a}.form label{font-weight:700;font-size:13px}.form input,.form select,.form textarea{display:block;width:100%;margin-top:8px;padding:14px;border:1px solid #e9dde5;border-radius:12px;background:#fffdfd;font:inherit;color:var(--ink);outline:none}.form input:focus,.form select:focus,.form textarea:focus{border-color:#c693c5;box-shadow:0 0 0 3px #f4e6f4}.full{grid-column:1/-1}.form-note{font-size:12px;line-height:1.6;color:#766e79;background:#faf5f8;padding:15px;border-radius:12px}.submit{grid-column:1/-1;font-size:16px}.cta{padding:75px 25px;text-align:center;background:linear-gradient(135deg,#6c4ab6,#b95d9d);color:#fff}.cta>div{max-width:760px;margin:auto}.cta>div>span{font-size:35px}.cta h2{font-size:42px;margin:15px}.cta p{opacity:.88;margin-bottom:28px}.light{background:#fff;color:var(--purple)!important}footer{text-align:center;padding:55px 25px;background:#282437;color:#d9d2de;display:flex;flex-direction:column;align-items:center;gap:13px}footer .brand{color:#fff}footer a{color:#f3b5cb}footer small{opacity:.65;margin-top:12px}@media(max-width:820px){nav>a:not(.pill){display:none}.hero{grid-template-columns:1fr;padding-top:45px}.hero-copy{text-align:center}.hero-copy>p{margin-left:auto;margin-right:auto}.actions,.trust{justify-content:center}.art-card{width:100%;height:420px;margin:auto}.record{transform:scale(.82);transform-origin:left top}.steps{grid-template-columns:1fr}.order{grid-template-columns:1fr}.order-intro{text-align:center}.form{grid-template-columns:1fr}.form label,.full,.submit{grid-column:1}.section,.occasions,.order{padding-top:65px;padding-bottom:65px}}@media(max-width:470px){.nav{padding:0 16px}.brand{font-size:20px}.pill.small{font-size:12px;padding:9px 12px}.hero{padding-left:20px;padding-right:20px}.hero h1{font-size:46px}.actions{flex-direction:column}.art-card{height:360px}.record{left:18px;top:58px;transform:scale(.72)}.caption{left:18px;right:18px}.form{padding:22px}.section-head h2,.order h2,.cta h2{font-size:34px}}

/* Order form sections and price summary */
.price-card{margin:24px 0;padding:26px;border:1px solid #eedce8;border-radius:24px;background:linear-gradient(145deg,#fff2e9,#faf0fc);box-shadow:0 10px 30px #4433420d}
.price-card .eyebrow{display:block;letter-spacing:1.2px}
.price-amount{font-size:44px;font-weight:800;color:var(--purple);line-height:1.1}
.price-card p{margin:12px 0}
.price-card ul{padding-left:20px;margin-bottom:0;color:#625d6d;line-height:1.7}
.price-card li+li{margin-top:10px}
.form-section-heading{display:flex;align-items:center;gap:12px;padding:16px 0 4px;border-top:1px solid #eee2eb}
.form-section-heading span{display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;border-radius:50%;background:#f3e6f8;color:var(--purple);font-weight:800}
.form-section-heading h3{margin:0;font-size:19px}
.form label{font-size:14px;line-height:1.5}
.form label small{display:block;margin-top:7px;font-size:12px;line-height:1.5;font-weight:400;color:#746e78}
.form textarea{resize:vertical}
.form :is(input,select,textarea){font-size:16px}
@media(max-width:820px){.price-card{text-align:left;max-width:520px;margin:24px auto}.form{gap:22px}.form-section-heading{scroll-margin-top:90px}}

/* Homepage sample and easier occasion browsing */
.sample-preview{padding:48px 24px;text-align:center;background:#fff5fa}
.sample-preview h2{font-family:'Playfair Display',serif;font-size:clamp(25px,4vw,36px);margin:10px 0}
.sample-preview p{color:#625d6d;line-height:1.6}
.sample-preview audio{display:block;width:100%;max-width:600px;margin:22px auto}
.sample-preview a{color:var(--purple);font-weight:700}
.occasion-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.occasion-cards span{padding:0;border-radius:18px;text-align:center}
.occasion-cards span>a{display:flex;align-items:center;justify-content:center;min-height:76px;padding:18px;text-decoration:none!important;border-radius:18px}
.occasion-cards span:not(:has(a)){padding:22px 18px;display:flex;align-items:center;justify-content:center}
.occasion-cards a:hover{background:#fff0f5}
.occasion-cards a:focus-visible,.optional-details summary:focus-visible{outline:3px solid var(--purple);outline-offset:3px}
.optional-details{background:#faf5f8;border:1px solid #eee2eb;border-radius:16px;padding:18px}
.optional-details summary{font-size:15px;font-weight:700;cursor:pointer;line-height:1.5;min-height:30px}
.optional-details>p{font-size:13px;color:#746e78;line-height:1.6}
.optional-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}
@media(max-width:820px){.optional-fields{grid-template-columns:1fr}.optional-fields label{grid-column:1}}
@media(max-width:470px){.occasion-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.occasion-cards span>a{min-height:86px;padding:14px;font-size:14px}.sample-preview{padding:38px 20px}}
