@import url('https://fonts.googleapis.com/css2?family=Quattrocento:wght@400;700&display=swap');:root{--cream:#fbf4ee;--ink:#44312a;--blush:#efd3cc}*{box-sizing:border-box}body{margin:0;background:#f9f2ee;color:var(--ink);font-family:Quattrocento,Georgia,serif}.shell{max-width:760px;margin:auto;min-height:100vh}header{text-align:center;padding:44px 12px 35px;background:var(--cream)}.seal{height:170px;width:170px;border:2px solid #bc936b;border-radius:50%;margin:auto;display:flex;flex-direction:column;justify-content:center;align-items:center;line-height:1.05;outline:1px solid #bc936b;outline-offset:5px}.seal strong{font-size:25px;font-weight:400}.seal small{font-size:17px}.star{font-size:25px;color:#ba8c55}.bow{font-size:22px;color:#ba8c55}form{background:white;box-shadow:0 4px 12px #3c27211a;margin:0 14px;border-radius:6px;overflow:hidden}.step{display:none}.step.active{display:block}.banner{background:radial-gradient(circle at 2% 5%,#efd4cd 0 2%,transparent 19%),radial-gradient(circle at 98% 95%,#efd4cd 0 2%,transparent 19%),#fff7f1;text-align:center;padding:48px 18px;border-bottom:1px solid var(--ink)}h1{font-size:clamp(31px,6vw,49px);line-height:1.25;margin:0;font-weight:700}.banner p{font-size:20px;line-height:1.6}.content{padding:35px 28px;font-size:21px;line-height:1.6}.content h2{font-size:23px;margin:0 0 22px}.content p{margin:0 0 22px}label,fieldset{display:block;margin:0 0 32px}fieldset{padding:0;border:0}legend{margin-bottom:18px}input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea{width:100%;margin-top:13px;border:1px solid #695b54;border-radius:5px;padding:16px;background:white;color:var(--ink);font:inherit;font-size:19px}input[type=file]{display:block;margin-top:14px;max-width:100%;font:inherit;font-size:15px}small{font-size:14px}em{color:#b3414d;font-style:normal}.choices label,.check{display:flex;gap:14px;align-items:flex-start;margin:12px 0;font-size:20px}.choices input,.check input{width:21px;height:21px;flex:none;accent-color:#654137;margin-top:5px}.actions{padding:20px 28px 34px;display:grid;gap:12px}.actions button{padding:19px;border:0;border-radius:8px;background:#50352c;color:white;font:inherit;font-size:23px;cursor:pointer}.actions button:hover{background:#6c493d}.actions button:disabled{opacity:.5;cursor:wait}#feedback{color:#a12635;padding:0 28px 18px;margin:0;font-size:16px}footer{text-align:center;padding:35px 12px;font-size:12px;letter-spacing:2px}.hp{position:absolute;left:-9999px}input:focus,select:focus,textarea:focus{outline:2px solid #b88880;outline-offset:2px}@media(max-width:480px){header{padding:30px 12px}.content{padding:32px 20px;font-size:19px}.choices label{font-size:18px}.actions{padding:16px 20px 28px}}

/* Branded assets */
header{padding:36px 12px 28px}.brand-logo{display:block;width:min(310px,75vw);height:auto;margin:0 auto}.banner{background:#fff7f1 url("/assets/cartistry-floral-header.png") center center / cover no-repeat;min-height:165px;display:flex;flex-direction:column;align-items:center;justify-content:center}.banner h1,.banner p{position:relative;z-index:1;text-shadow:0 1px 4px #fff7f1}.banner p{max-width:520px}.actions button:focus-visible{outline:3px solid #b88880;outline-offset:3px}input:disabled{opacity:.55;cursor:not-allowed}
@media(max-width:480px){.banner{min-height:150px;background-size:auto 100%}.banner h1{font-size:clamp(29px,7vw,42px)}header{padding:22px 12px 20px}}
