:root{--cream:#fffaf4;--blush:#fbe4eb;--pink:#e92e73;--rose:#c94a7a;--gold:#c99a4c;--ink:#8c4960}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:Georgia,'Times New Roman',serif}a{color:inherit;text-decoration:none}.skip-link{position:absolute;left:-999px}.skip-link:focus{left:1rem;top:1rem;z-index:100;color:#fff;background:var(--pink);padding:.7rem}.announcement{background:var(--announcement-color);border-bottom:2px solid var(--gold);color:#fff;text-align:center;letter-spacing:.07em;padding:.55rem 1rem}.announcement p{margin:0}.site-header{min-height:105px;display:grid;grid-template-columns:1fr auto 1fr;gap:1rem;align-items:center;padding:0 4vw;border-bottom:1px solid #eed5bc;background:rgba(255,250,244,.95);position:relative;z-index:3}.nav{display:flex;gap:clamp(.8rem,2vw,2rem);font-size:.76rem;color:var(--rose);letter-spacing:.1em}.nav-right{justify-content:flex-end}.nav a:hover,.footer-links a:hover,.text-link:hover{text-decoration:underline;color:var(--pink)}.brand{display:flex;max-width:260px;align-items:center;justify-content:center;gap:.35rem;color:var(--rose);font-size:1rem;letter-spacing:.04em;text-align:center}.brand-crown{font-size:1.45rem}.brand i{font-style:normal;color:var(--pink)}.brand-image{max-width:230px;max-height:90px;object-fit:contain}.palace-hero{min-height:510px;position:relative;overflow:hidden;isolation:isolate;display:grid;place-items:center;background:radial-gradient(circle at 50% 8%,#fff 0,transparent 28%),linear-gradient(120deg,#f8cbd9,var(--hero-pink),#fff3f6);border-bottom:1px solid var(--gold)}.palace-hero:before,.palace-hero:after{content:'🎀';position:absolute;opacity:.23;font-size:18rem;filter:saturate(.8);z-index:-1}.palace-hero:before{left:-5rem;bottom:-7rem;transform:rotate(-18deg)}.palace-hero:after{right:-4rem;top:-4rem;transform:rotate(16deg)}.hero-inner{text-align:center;max-width:800px;padding:5rem 1.25rem}.eyebrow{color:var(--gold);font-size:.75rem;letter-spacing:.18em;margin:0 0 1rem}.palace-hero h1,.page-content h1{font-size:clamp(2.5rem,5vw,5.4rem);font-weight:400;line-height:.98;letter-spacing:.04em;color:var(--rose);margin:.5rem 0 1.4rem}.hero-copy{max-width:520px;margin:0 auto 1.6rem;font-size:1.1rem;line-height:1.6}.pink-button{display:inline-block;border:1px solid var(--gold);border-radius:999px;background:var(--pink);color:#fff;padding:.95rem 1.8rem;font:inherit;font-size:.78rem;letter-spacing:.13em;cursor:pointer;box-shadow:0 6px 0 rgba(190,93,125,.18)}.pink-button:hover{background:#c8195c;transform:translateY(-1px)}.hero-flower,.footer-flower,.notice-flower{position:absolute;color:#fff;font-size:4rem;text-shadow:0 2px 0 var(--gold)}.flower-one{left:8%;top:20%}.flower-two{right:9%;bottom:15%;font-size:3rem}.daisy{right:6%;top:16%;color:#fff4b8}.customizable-notice{padding:5rem 1.2rem;text-align:center;background:linear-gradient(#fffaf4,#fff0f4)}.notice-inner{max-width:720px;margin:auto;border:1px solid #e6be85;padding:3.2rem 2rem;position:relative;background:#fffdfb}.notice-inner h2{font-size:2rem;font-weight:400;color:var(--rose);margin:.2rem 0 1rem}.notice-inner div{line-height:1.65}.notice-flower{position:static;font-size:2.2rem;margin:.2rem}.text-link{display:block;color:var(--rose);font-size:.8rem;letter-spacing:.12em;margin-top:1.4rem}.page-shell{padding:5rem 1.2rem;min-height:55vh;background:linear-gradient(135deg,#fffaf4,#fdebf0)}.page-content{max-width:820px;margin:auto;text-align:center}.page-content h1{font-size:clamp(2.5rem,4vw,4rem)}.rte{line-height:1.7}.contact-card form{text-align:left;max-width:610px;margin:2.2rem auto 0}.contact-card label{display:block;font-size:.8rem;letter-spacing:.1em;color:var(--rose);margin:1rem 0 .4rem}.contact-card input,.contact-card textarea{width:100%;border:1px solid #e6be85;background:#fffdfb;padding:.85rem;font:inherit;color:var(--ink)}.contact-card .pink-button{margin-top:1.2rem}.form-success{color:#397a5a}.faq-list{text-align:left;margin-top:2rem;border-top:1px solid #e6be85}.faq-list details{border-bottom:1px solid #e6be85;padding:1rem 0}.faq-list summary{cursor:pointer;color:var(--rose);font-size:1.1rem}.faq-list summary span{float:right}.faq-answer{padding:1rem 1.3rem 0;line-height:1.6}.cart-item{display:flex;gap:1.2rem;text-align:left;padding:1rem 0;border-bottom:1px solid #e6be85}.cart-item img{width:100px;height:100px;object-fit:cover}.cart-item h2{margin:0;color:var(--rose);font-size:1.2rem;font-weight:400}.cart-total{font-size:1.2rem;color:var(--rose);margin:1.8rem 0}.site-footer{text-align:center;padding:3.5rem 1rem;background:#f5d4df;border-top:1px solid var(--gold);position:relative}.site-footer .footer-flower{position:static;font-size:2.2rem}.footer-heading{font-size:1.3rem;color:var(--rose);margin:.2rem 0 1.1rem}.footer-links{display:flex;justify-content:center;flex-wrap:wrap;gap:1.4rem;font-size:.75rem;letter-spacing:.1em;color:var(--rose)}.copyright{font-size:.75rem;margin:1.5rem 0 0}.falling-carriages{position:fixed;z-index:10;inset:0;pointer-events:none;overflow:hidden}.carriage{position:absolute;top:-10vh;color:#f29ab6;text-shadow:0 1px 0 #fff,0 0 8px #fff;font-size:1.45rem;opacity:.6;animation:fall linear infinite}.carriage-1{left:3%;animation-duration:17s;animation-delay:-9s}.carriage-2{left:14%;animation-duration:22s;animation-delay:-2s}.carriage-3{left:26%;animation-duration:15s;animation-delay:-12s}.carriage-4{left:39%;animation-duration:20s;animation-delay:-15s}.carriage-5{left:51%;animation-duration:18s;animation-delay:-6s}.carriage-6{left:63%;animation-duration:23s;animation-delay:-4s}.carriage-7{left:74%;animation-duration:16s;animation-delay:-11s}.carriage-8{left:84%;animation-duration:21s;animation-delay:-16s}.carriage-9{left:92%;animation-duration:19s;animation-delay:-8s}.carriage-10{left:45%;animation-duration:24s;animation-delay:-19s}@keyframes fall{to{transform:translate3d(3vw,120vh,0) rotate(360deg)}}@media(max-width:720px){.site-header{grid-template-columns:1fr;gap:.55rem;padding:1rem;text-align:center}.nav{justify-content:center;flex-wrap:wrap}.nav-right{justify-content:center}.brand{margin:auto}.palace-hero{min-height:500px}.palace-hero:before,.palace-hero:after{font-size:12rem}.hero-flower{font-size:2.5rem}.flower-one{left:3%;top:15%}.footer-links{gap:.8rem}.carriage{font-size:1rem}}
