@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=DM+Sans:wght@400;500;600&display=swap');
:root{--paper:#fbf7f2;--rose:#943c55;--ink:#432b34;--muted:#78666c;--pink:#f3e2e3;--line:#dfc8cb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.75 'DM Sans',sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}img{width:100%;height:100%;object-fit:cover;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3,.brand,.price{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;line-height:1.02}h1{font-size:clamp(56px,6.3vw,95px);letter-spacing:-3px;margin-bottom:25px}h2{font-size:clamp(43px,4.3vw,66px);letter-spacing:-1.5px;margin-bottom:25px}h3{font-size:30px}em{font-weight:400;color:var(--rose)}p{color:var(--muted)}.template-note{background:#ebd4d8;text-align:center;font-size:10px;letter-spacing:1.5px;padding:5px 15px}.template-note span{margin:0 8px}header{height:100px;display:flex;align-items:center;justify-content:space-between;max-width:1440px;margin:auto;padding:0 6%;border-bottom:1px solid var(--line)}.brand{font-size:38px;color:var(--rose);display:inline-flex;flex-direction:column;text-align:center;line-height:.9}.brand span{font:9px 'DM Sans',sans-serif;letter-spacing:4px;margin-top:12px}nav{display:flex;align-items:center;gap:34px;font-size:12px}nav a:hover,.text-link:hover{color:var(--rose)}.menu{display:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;background:var(--rose);color:#fff;border:1px solid var(--rose);padding:14px 25px;font-size:12px;letter-spacing:.4px;border-radius:2px;transition:background .2s,transform .2s}.button:hover{background:#742b41;color:white;transform:translateY(-2px)}.button.small{padding:11px 19px}.button.outline{background:transparent;color:var(--rose)}.button.outline:hover{background:var(--rose);color:white}.text-link{display:inline-block;font-size:12px;border-bottom:1px solid var(--line);padding-bottom:4px}.hero{display:grid;grid-template-columns:1fr 1fr;max-width:1440px;margin:auto;padding:65px 6% 70px;gap:45px;min-height:700px;overflow:hidden}.hero-copy{padding-top:35px}.eyebrow{font-size:10px;letter-spacing:2.4px;font-weight:600;color:var(--rose);margin-bottom:23px}.hero-copy>p:not(.eyebrow){max-width:375px}.intro{font-size:17px}.hero .text-link{margin-left:20px}.hero-foot{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;margin-top:50px;color:var(--muted)}.hero-art{position:relative;padding:0 0 25px 30px}.lace-frame{height:540px;padding:12px;border:1px solid #cfb9b7;border-radius:45% 45% 2px 2px;outline:6px dotted #e4cbd0;outline-offset:4px;transform:rotate(2deg);background:white}.lace-frame img{border-radius:45% 45% 0 0;object-position:50% 35%}.postcard{position:absolute;width:190px;height:240px;bottom:8px;left:-35px;background:white;padding:9px 9px 36px;box-shadow:0 8px 25px #57333c20;transform:rotate(-9deg)}.postcard span{font:italic 20px Georgia,serif;color:var(--rose);display:block;text-align:center;margin-top:7px}.script{font:italic 29px 'Cormorant Garamond',Georgia,serif;color:var(--rose)}.hero-script{position:absolute;right:0;bottom:-16px;transform:rotate(-5deg)}.flower{color:#c98094;font-size:100px;line-height:1}.f1{position:absolute;right:-40px;top:0}.ribbon{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:17px;text-align:center;font-size:10px;letter-spacing:2.5px;color:var(--rose);background:#f6e9e9}.ribbon span{padding:0 30px}.section{padding:100px 7%;max-width:1440px;margin:auto}.section-top{display:flex;justify-content:space-between;align-items:end}.section-top>p{font-size:13px}.filters{display:flex;gap:25px;margin:16px 0 30px;flex-wrap:wrap}.filters button{background:none;border:0;padding:8px 0;color:var(--muted);font-size:12px;border-bottom:1px solid transparent}.filters button.active{color:var(--rose);border-color:var(--rose)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:27px}.photo{border:0;padding:0;background:none;text-align:left;min-width:0;color:var(--ink)}.photo img{height:420px;transition:filter .2s}.photo:hover img{filter:brightness(.93)}.photo.lowered{margin-top:50px}.photo.lowered img{height:370px}.photo span{display:flex;justify-content:space-between;font:italic 24px 'Cormorant Garamond',serif;margin-top:15px}.photo b{font:18px sans-serif;font-weight:400}.photo[hidden]{display:none}.caption{font-size:11px;text-align:center;margin:30px auto 0;max-width:800px;line-height:1.8}.experience{background:#f1e4e3;display:grid;grid-template-columns:.9fr 1fr;gap:11%;align-items:center;position:relative}.experience:before,.experience:after{content:'';position:absolute;left:0;right:0;height:10px;background:radial-gradient(circle at 7px 0,var(--paper) 6px,transparent 6.5px) repeat-x;background-size:14px 12px;top:0}.experience:after{top:auto;bottom:0;transform:rotate(180deg)}.experience-image{height:430px;position:relative;padding:12px;border:1px solid #cbaeb3}.experience-image .script{position:absolute;bottom:25px;left:30px;background:var(--paper);padding:8px 20px;transform:rotate(-6deg)}.experience>div>p:not(.eyebrow){font-size:14px}.process{text-align:center}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:60px;margin-top:55px}.steps article{position:relative}.steps article+article:before{content:'';position:absolute;left:-30px;top:20px;bottom:0;border-left:1px solid var(--line)}.steps span{font:italic 42px 'Cormorant Garamond',serif;color:#ba7b8b}.steps h3{font-size:28px;margin:15px 0}.steps p{font-size:13px}.sessions{background:#f7eeee;text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.packages{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:45px;text-align:left}.packages article{border:1px solid var(--line);padding:35px 26px;background:var(--paper);position:relative}.packages article:before{content:'✧';position:absolute;right:12px;top:6px;color:#bb7c8c}.packages article.featured{border-color:var(--rose);box-shadow:0 8px 30px #943c5509}.package-tag{font-size:8px;letter-spacing:1.8px;color:var(--rose)}.packages h3{font-size:32px;white-space:nowrap;margin-bottom:20px}.price{font-size:49px;color:var(--rose);margin-bottom:22px}.package-desc{font-size:12px;min-height:45px}.packages ul{list-style:none;padding:20px 0;margin:20px 0;border-top:1px solid var(--line);font-size:12px}.packages li{padding:5px 0}.packages li:before{content:'✧';margin-right:8px;color:var(--rose)}.packages .button{width:100%;gap:8px}.faq{display:grid;grid-template-columns:1fr 1.4fr;gap:10%}.faq details{border-bottom:1px solid var(--line);padding:20px 0}.faq summary{cursor:pointer;font-size:14px;list-style:none;display:flex;justify-content:space-between;gap:15px}.faq summary:after{content:'+';color:var(--rose)}.faq details[open] summary:after{content:'−'}.faq details p{font-size:13px;margin:15px 0 0}.enquire{background:var(--pink);display:grid;grid-template-columns:1fr 1fr;gap:10%;border-top:1px solid var(--line)}.enquire .script{display:block;margin-top:40px}form{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{font-size:11px;display:block;color:var(--ink)}label span{color:var(--muted)}label:first-child,label:nth-child(4),form>.button,.form-note{grid-column:1/-1}input,select,textarea{display:block;width:100%;border:0;border-bottom:1px solid #b99a9f;padding:12px 0;background:transparent;border-radius:0;color:var(--ink);font-size:13px}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid var(--rose);outline-offset:4px}.form-note{font-size:10px;line-height:1.7;margin:0}#result{grid-column:1/-1;background:var(--paper);padding:25px}#result[hidden]{display:none}#result h3{margin-bottom:12px}#result p{font-size:12px}#draft{margin-bottom:18px}footer{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:45px 7%;max-width:1440px;margin:auto}footer p,footer a:not(.brand),footer small{font-size:10px;margin:0}footer small{text-align:right;color:var(--muted)}dialog{border:0;padding:15px;background:var(--paper);max-width:90vw;max-height:95vh}dialog::backdrop{background:#291620d9}dialog img{max-height:78vh;width:auto;max-width:82vw}dialog p{font-size:12px;margin:10px 0 0}.close{position:absolute;right:18px;top:18px;border:0;background:var(--paper);width:35px;height:35px;font-size:25px;color:var(--ink)}:focus-visible{outline:2px solid var(--rose);outline-offset:5px}@media(min-width:1500px){body{background:#f5eeea}main,header,footer{background:var(--paper)}}@media(max-width:1000px){nav{gap:18px}.hero{gap:20px}.lace-frame{height:480px}.postcard{width:150px;height:195px;left:0}.packages h3{font-size:26px}.packages article{padding:28px 18px}.ribbon span{padding:0 12px}.hero .text-link{margin-left:0;margin-top:18px;display:table}.photo img{height:340px}.photo.lowered img{height:290px}}@media(max-width:700px){header{height:85px;padding:0 6%;position:relative}.brand{font-size:32px}.menu{display:block;border:0;background:none;color:var(--rose);font-size:12px}nav{display:none;position:absolute;z-index:5;top:85px;left:0;right:0;padding:25px 6%;background:var(--paper);box-shadow:0 8px 15px #432b3410}nav.open{display:flex;flex-direction:column;align-items:start}.hero{grid-template-columns:1fr;padding:35px 7% 50px;gap:45px}.hero-copy{padding:0}h1{letter-spacing:-2px;font-size:62px}.hero-copy>p:not(.eyebrow){max-width:100%}.hero-foot{margin-top:25px}.hero-art{padding:0 15px 30px 35px;max-width:470px;width:100%;margin:auto}.lace-frame{height:450px}.postcard{width:145px;height:185px;bottom:0;left:0}.hero-script{font-size:25px;right:15px;bottom:-10px}.f1{right:-5px;font-size:75px}.ribbon{font-size:8px;letter-spacing:1px}.ribbon span{padding:0 6px}.section{padding:65px 7%}.section-top{display:block}.section-top>p{margin-top:20px}.gallery{gap:14px;grid-template-columns:1fr 1fr}.photo img{height:280px}.photo.lowered{margin-top:30px}.photo.lowered img{height:250px}.photo:nth-child(3){grid-column:1/-1;margin-top:10px}.photo:nth-child(3) img{height:240px}.photo span{font-size:21px}.experience{grid-template-columns:1fr;gap:40px}.experience-image{height:310px;order:2}.steps{grid-template-columns:1fr;gap:25px;margin-top:30px}.steps article{max-width:340px;margin:auto}.steps article+article:before{display:none}.steps p{margin-bottom:0}.packages{grid-template-columns:1fr;gap:20px;margin-top:30px}.packages article{padding:30px}.packages h3{font-size:35px}.package-desc{min-height:0}.packages ul{margin:10px 0;padding:15px 0}.faq,.enquire{grid-template-columns:1fr;gap:25px}.faq h2 br{display:none}.enquire .script{margin-top:15px}form{margin-top:10px;gap:20px}footer{flex-wrap:wrap;gap:25px}footer small{text-align:left;width:100%}.filters{gap:19px}.template-note{font-size:8px;letter-spacing:1px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Fine floral engraving and lace details, kept away from copy. */
.hero{position:relative}.hero:before{content:'';position:absolute;width:155px;height:230px;left:-65px;top:175px;opacity:.22;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 150 240'%3E%3Cg fill='none' stroke='%23943c55' stroke-width='1.2'%3E%3Cpath d='M40 240Q115 130 72 10M72 70Q25 35 22 75Q50 95 72 70M80 110Q133 65 130 111Q102 131 80 110M74 158Q24 119 22 157Q43 184 74 158M59 196Q110 157 113 194Q88 220 59 196'/%3E%3Cpath d='M72 38C26 23 47-8 72 10C96-12 117 20 72 38ZM72 32C48 18 62 7 72 18C85 4 98 21 72 32'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat}.lace-frame{outline-style:dotted;outline-width:7px}.ribbon{position:relative}.ribbon:after{content:'';position:absolute;left:0;right:0;bottom:-7px;height:7px;background:radial-gradient(circle at 5px 0,transparent 3px,#dfc8cb 3.5px,#dfc8cb 4px,transparent 4.5px) repeat-x;background-size:10px 7px}.featured:after{content:'✿';position:absolute;right:15px;top:32px;color:#d5a7b3;font-size:24px}
.portfolio-links{margin-top:40px}.portfolio-links .photo p{font-size:12px;margin-top:8px}.group-offer{display:flex;text-align:left;justify-content:space-between;align-items:center;gap:35px;margin-top:25px;padding:30px;border:1px solid var(--line);background:var(--paper)}.group-offer .eyebrow{margin-bottom:12px}.group-offer h3{margin-bottom:12px}.group-offer p:not(.eyebrow){font-size:13px;max-width:610px;margin-bottom:0}.group-offer .button{flex-shrink:0}.portfolio-intro{padding-bottom:30px;text-align:center}.portfolio-intro>.text-link{margin-bottom:40px}.portfolio-intro h1{font-size:clamp(55px,6vw,88px)}.portfolio-intro>p:not(.eyebrow){max-width:650px;margin-left:auto;margin-right:auto}.portfolio-tabs{display:flex;justify-content:center;gap:30px;margin-top:35px;flex-wrap:wrap;font-size:12px}.portfolio-tabs a{padding-bottom:6px;border-bottom:1px solid transparent}.portfolio-tabs a[aria-current],.portfolio-tabs a:hover{color:var(--rose);border-color:var(--rose)}.portfolio-page{padding-top:30px}.portfolio-cta{text-align:center;background:var(--pink)}.direct-whatsapp{margin-left:20px}#enquiry-form label{grid-column:auto}#enquiry-form label:first-child,#enquiry-form label:last-of-type{grid-column:1/-1}#enquiry-form>.button{grid-column:1/-1}.postcard span{font-size:18px}@media(max-width:700px){.group-offer{flex-direction:column;align-items:start;padding:25px;gap:20px}.group-offer .button{width:100%}.portfolio-intro{padding-bottom:15px}.portfolio-tabs{gap:18px}.direct-whatsapp{display:table;margin:20px auto 0}.portfolio-links .photo p{font-size:11px}.hero .eyebrow{font-size:9px;letter-spacing:1.8px}}
.gallery[data-portfolio]{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.gallery[data-portfolio] .photo{padding:0;border:0;background:none;cursor:pointer;aspect-ratio:3/4;overflow:hidden}.gallery[data-portfolio] .photo img{width:100%;height:100%;object-fit:cover;display:block}
