@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--pink:#ae526f;--rose:#d394a5;--ink:#533c42;--muted:#89767b;--paper:#fffcf9;--blush:#faedef;--line:#eedde0;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.6 var(--sans);-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{border:0;color:inherit;cursor:pointer;background:none}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #bd6c8b;outline-offset:4px}button,a{touch-action:manipulation}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400}h2{font-size:35px;line-height:1.25;margin:12px 0 20px}h2 i{font-style:normal}h3{line-height:1.4}.topline{padding:9px 20px;background:#f6e3e9;text-align:center;color:#91556a;letter-spacing:1.25px;font-size:10px;display:flex;align-items:center;justify-content:center;gap:8px}.inline-heart{width:23px;height:23px;display:inline-block;vertical-align:middle}.topline .inline-heart{width:15px;height:15px}header{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:1256px;margin:auto;padding:23px 38px;border-bottom:1px solid var(--line);background:var(--paper)}.brand{font:21px/1.25 var(--serif);white-space:nowrap}.brand em{font-size:31px;color:var(--pink)}.brand small{display:block;font:7px/1.6 var(--sans);letter-spacing:1.6px;margin-top:4px}.logo-mark{float:left;margin:-4px 13px -4px 0;width:59px;height:59px;border-radius:50%;background:url(assets/logo.jpg) center 43% / 151% auto}nav{display:flex;align-items:center;gap:30px;font-size:12px}nav>a{padding:8px 0}nav>a:hover{color:var(--pink)}nav button{display:flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid var(--line);border-radius:28px;background:white}nav b{display:grid;place-items:center;background:var(--pink);color:white;border-radius:50%;font-size:10px;width:20px;height:20px}.skip-link{position:fixed;left:20px;top:-70px;z-index:50;padding:12px;background:var(--pink);color:white}.skip-link:focus{top:15px}
.hero{max-width:1256px;margin:auto;padding:65px 56px 72px;display:grid;grid-template-columns:1.05fr 1fr;gap:55px;align-items:center;overflow:hidden}.eyebrow,.tiny{font-size:9px;font-weight:600;letter-spacing:2px;line-height:1.7;color:var(--pink);display:block}.hero-copy>.eyebrow{display:flex;align-items:center;gap:10px;font-size:8px}.hero-copy>.eyebrow>span{width:24px;height:1px;background:var(--rose)}h1{font-size:clamp(44px,4.8vw,65px);line-height:1.16;letter-spacing:-1.7px;margin:23px 0}h1 i{color:var(--pink);font-weight:400}.hero-copy>p{max-width:345px;color:var(--muted);font-size:14px;line-height:1.95;margin:0 0 26px}.hero-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.primary{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--pink);border-radius:8px;padding:14px 23px;background:var(--pink);color:white;font-size:11px;font-weight:500;min-height:46px;transition:background .2s,transform .2s}.primary:hover{background:#96445f;transform:translateY(-1px)}.text-link{font-size:11px;border-bottom:1px solid #d5acba;padding:5px 0}.signature{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--muted);margin-top:27px}.signature img{width:20px;height:20px}.hero-collage{position:relative;padding:0 30px 22px 34px}.hero-frame{padding:9px 9px 31px;background:#fff;border:1px solid #ead8d9;box-shadow:0 15px 50px #74434b0c;border-radius:160px 160px 12px 12px;transform:rotate(2deg);position:relative}.hero-photo{width:100%;height:405px;object-fit:cover;border-radius:150px 150px 5px 5px;object-position:center 48%}.photo-label{display:block;text-align:center;font:italic 17px var(--serif);color:#a16d7e;margin:14px 0 -15px}.hero-small{position:absolute;width:145px;left:-8px;bottom:-6px;padding:7px 7px 11px;background:white;border:1px solid var(--line);box-shadow:0 8px 35px #70455212;border-radius:7px;transform:rotate(-7deg)}.hero-small img{width:100%;height:135px;object-fit:cover;border-radius:3px}.hero-small span{display:block;text-align:center;font-size:8px;color:var(--muted);padding-top:6px}.hero-seal{position:absolute;top:11px;right:0;width:80px;height:80px;background:#fbf0e5;border:1px dashed #dbb5a5;outline:5px solid #fbf0e5;border-radius:50%;display:flex;align-items:center;justify-content:center;text-align:center;transform:rotate(12deg)}.hero-seal>img{position:absolute;width:17px;height:17px;top:7px}.hero-seal span{font-size:9px;line-height:1.5;padding-top:14px}.hero-seal i{font:italic 20px var(--serif);color:var(--pink)}.hero-heart{position:absolute;width:31px;height:31px;bottom:43px;right:4px;transform:rotate(17deg)}
.contact{max-width:1144px;margin:14px auto 0;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:27px 32px;background:#faf0f0;border:1px solid #f2e1e1;border-radius:12px;position:relative}.contact:before{content:'';position:absolute;inset:6px;border:1px dashed #e4c6cd;border-radius:8px;pointer-events:none}.contact h2{font-size:22px;margin:7px 0 0}.tiny{font-size:8px}.socials{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.socials a,.socials button{background:#fffcfa;border:1px solid #ead4db;border-radius:7px;padding:10px 13px;display:inline-flex;align-items:center;gap:7px;font-size:10px;min-height:45px;transition:border-color .2s}.socials a:hover,.socials button:hover{border-color:var(--pink)}.social-icon{width:24px;height:24px;object-fit:contain;mix-blend-mode:multiply}
.section{max-width:1144px;margin:76px auto}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:24px}.section-heading>a{font-size:11px;padding-bottom:4px;border-bottom:1px solid #d2a3b3;white-space:nowrap}.section-heading h2{margin-bottom:18px}.section-heading h2 .inline-heart{width:28px;height:28px;margin-left:8px}.subnote{color:var(--muted);font-size:11px;margin:-6px 0 27px}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 22px}.card{min-width:0;border:1px solid #f0e5e3;border-radius:12px;background:#fff;overflow:hidden;padding:9px 9px 16px;display:flex;flex-direction:column;align-items:stretch;box-shadow:0 4px 18px #78535b03;transition:box-shadow .25s,transform .25s}.card:hover{transform:translateY(-3px);box-shadow:0 9px 25px #78535b0c}.photo{position:relative;aspect-ratio:4/5;border-radius:7px;overflow:hidden;background:#f6ece6}.photo>button:first-child{width:100%;height:100%;display:block;padding:0}.photo>button:first-child>img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.photo>button:first-child:hover>img{transform:scale(1.025)}.heart{position:absolute;right:10px;top:10px;width:36px;height:36px;padding:0;display:flex;align-items:center;justify-content:center;background:#fffdfaf7;border:1px solid #f2dddd;border-radius:50%;box-shadow:0 2px 8px #8051640b}.heart img{width:24px;height:24px;object-fit:contain;flex-shrink:0;margin:0}.heart.selected{background:#fff0f6;border-color:#e9bacb}.tag{color:#a1657b;letter-spacing:1.2px;font-size:8px;margin:16px 8px 4px}.card h3{font-size:20px;margin:0 8px 7px;min-height:28px}.card-caption{font-size:10px;color:var(--muted);line-height:1.6;margin:0 8px 12px;min-height:32px}.price{font-size:13px;color:var(--pink);font-weight:600}.price small{font-size:9px;font-weight:400}.card>.price{margin:auto 8px 0}.details{display:inline-block;color:var(--pink);border:0;border-bottom:1px solid #dec0cc;padding:0 0 3px;font-size:10px;background:none;line-height:1.6}.card>.details{align-self:stretch;text-align:center;background:#fcf4f5;border:1px solid #f3e6e9;border-radius:5px;padding:9px;margin:15px 7px 0;min-height:34px}.card>.details:hover{background:#f9e9ef}
.themes{text-align:center;border:1px solid #efdedc;border-radius:14px;padding:47px 44px;background:radial-gradient(ellipse at 50% 0,#fffaf6 5%,#f9f0eb 100%);position:relative}.themes:before,.themes:after{content:'';position:absolute;width:25px;height:25px;background:url(assets/heart.svg) center / contain no-repeat;opacity:.65}.themes:before{top:28px;left:29px;transform:rotate(-14deg)}.themes:after{right:27px;bottom:24px;transform:rotate(13deg)}.themes h2{font-size:32px;margin:12px 0 10px}.themes>p{color:var(--muted);font-size:12px}.theme-buttons{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin:27px auto 0;max-width:900px}.theme-buttons button{border:1px solid #e6d4d4;background:#fffdfb;border-radius:30px;padding:11px 20px;min-height:42px;transition:background .2s,border-color .2s}.theme-buttons button:hover{border-color:#c78da2;background:#fff4f6}.theme-buttons strong{font:14px var(--serif);font-weight:400}.search{display:flex;align-items:center;gap:8px;padding:11px 14px;border:1px solid var(--line);background:white;border-radius:7px;color:var(--pink)}.search input{border:0;background:none;width:180px;font-size:11px;outline:none;color:var(--ink)}.search:focus-within{outline:2px solid #dba6b9;outline-offset:3px}.filters{display:flex;gap:7px;flex-wrap:wrap;margin:15px 0 18px}.filters button{padding:9px 13px;border:1px solid var(--line);border-radius:7px;font-size:10px;min-height:37px;background:white}.filters button.active{background:var(--pink);color:white;border-color:var(--pink)}.filters button:hover:not(.active){background:var(--blush)}.filterbar{display:flex;align-items:center;gap:10px;margin-bottom:26px;padding:15px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);font-size:10px}.filterbar>span{margin-right:auto}.filterbar select{padding:9px 11px;border:1px solid var(--line);border-radius:6px;font-size:10px;max-width:175px;color:var(--ink);background:#fff;min-height:35px}.filterbar>button{font-size:10px;text-decoration:underline;text-underline-offset:4px}.empty{grid-column:1/-1;text-align:center;color:var(--muted);padding:45px 20px;line-height:2}
.how-to{border-top:1px solid var(--line);padding-top:52px}.how-to>div{text-align:center}.how-to h2{font-size:29px}.how-to ol{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);padding:0;margin:32px 0 0;gap:38px}.how-to li{position:relative;padding:0 6px 0 54px}.how-to li>span{position:absolute;left:0;top:1px;color:#c2869b;background:#faedf1;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-size:11px}.how-to h3{font-size:19px;margin:0 0 8px}.how-to li p{font-size:11px;line-height:1.9;color:var(--muted);margin:0}.closing{text-align:center;background:#faedef;padding:22px 20px 47px;border-top:1px solid #f0dce3;border-bottom:1px solid #f0dce3}.footer-illustration{display:block;width:280px;height:auto;object-fit:contain;margin:-12px auto -22px}.closing h2{margin:0 0 13px;font-size:34px}.closing p{font-size:12px;color:var(--muted);line-height:1.9;margin-bottom:20px}.closing .primary{min-width:160px}footer{text-align:center;padding:35px 20px 28px}footer p,footer>span{font-size:9px;color:var(--muted);margin:9px 0}footer .inline-heart{width:15px;height:15px}footer .brand{font-size:19px}footer .brand em{font-size:27px}
/* Accessible galleries and favorites */
dialog{width:calc(100% - 32px);max-width:850px;max-height:92dvh;padding:35px;border:1px solid #ead8de;border-radius:15px;background:var(--paper);color:var(--ink);overflow:auto;box-shadow:0 20px 80px #3e243025}dialog::backdrop{background:#42313c73;backdrop-filter:blur(5px)}.close{position:absolute;top:10px;right:11px;z-index:2;width:32px;height:32px;border-radius:50%;font-size:25px;color:var(--muted);background:#fffaf8}.close:hover{background:var(--blush)}#detail-content{display:grid;grid-template-columns:1.1fr 1fr;gap:30px;align-items:center}.gallery-media{position:relative;min-width:0;align-self:start}.gallery-stage{height:430px;overflow:hidden;background:#f6ebe5;border-radius:8px;display:flex;align-items:center;justify-content:center}.gallery-stage img{width:100%;height:100%;object-fit:contain}.gallery-nav{position:absolute;top:195px;width:38px;height:38px;border:1px solid #eddbdf;background:#fffcf8f5;border-radius:50%;display:grid;place-items:center;box-shadow:0 2px 10px #6b4f5320}.gallery-nav svg{width:16px;height:16px;fill:none;stroke:var(--pink);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.gallery-prev{left:8px}.gallery-next{right:8px}.gallery-caption{font-size:10px;line-height:1.7;text-align:center;color:var(--muted);margin:11px 0 4px}.gallery-counter{text-align:center;font-size:10px;color:var(--pink)}.gallery-thumbs{display:flex;gap:6px;overflow:auto;padding:10px 2px}.gallery-thumbs button{padding:3px;border:1px solid var(--line);border-radius:5px;flex:0 0 48px;height:56px;background:white}.gallery-thumbs button.active{border:2px solid var(--pink)}.gallery-thumbs img{width:100%;height:100%;object-fit:cover;border-radius:2px}.gallery-body h2{font-size:30px;margin:9px 0}.gallery-context{display:block;font-size:10px;color:var(--pink);margin:9px 0}.gallery-body p{font-size:12px;line-height:1.9;color:var(--muted);margin:17px 0}.gallery-body .gallery-help{font-size:10px}.gallery-favorite{display:flex;width:100%;margin:24px 0 12px}.gallery-favorite img{width:23px;height:23px;background:white;padding:2px;border-radius:50%}.photo-source{display:block;font-size:9px;color:var(--muted);text-decoration:underline;margin-top:13px}.saved-row{display:flex;align-items:center;gap:13px;border-bottom:1px solid var(--line);padding:18px 0}.saved-photo{width:55px;height:65px;object-fit:cover;flex-shrink:0;border-radius:5px}.saved-row>div{flex:1;min-width:0}.saved-row h3{font-size:19px;margin:0 0 5px}.variant-name{display:block;color:var(--muted);font-size:10px;margin-bottom:5px}.saved-row>button{font-size:10px;color:var(--pink)}#saved{max-width:600px}#saved>h2{font-size:30px}#saved>p{font-size:12px;color:var(--muted)}#total{font-size:12px;line-height:1.9;margin:22px 0}#saved>.primary{margin:5px 3px 0 0}#send-whatsapp[hidden]{display:none}#copy-fallback{display:block;width:100%;min-height:150px;margin-top:20px}#toast{position:fixed;z-index:40;bottom:25px;left:50%;transform:translateX(-50%);padding:13px 20px;max-width:90vw;background:var(--ink);color:white;border-radius:8px;font-size:12px;opacity:0;pointer-events:none;transition:opacity .2s}#toast.show{opacity:1}
@media(min-width:1450px){.hero{padding-top:78px;padding-bottom:90px}.hero-photo{height:445px}}@media(max-width:1180px){.section,.contact{margin-left:32px;margin-right:32px}.hero{padding-left:42px;padding-right:42px;gap:35px}h1{font-size:52px}.hero-small{left:0;width:125px}.hero-small img{height:115px}.hero-photo{height:380px}.grid{gap:24px 16px}.contact{padding:25px}.contact h2{font-size:20px}.socials a,.socials button{padding:9px 11px}.card h3{font-size:18px}}@media(max-width:900px){header{padding:22px 28px}nav{gap:20px}.hero{gap:20px;padding:48px 32px 62px}.hero-photo{height:340px}.hero-collage{padding-left:15px;padding-right:20px}.hero-copy>.eyebrow{font-size:7px;letter-spacing:1.5px}h1{font-size:44px}.hero-copy>p{font-size:12px}.hero-actions{gap:14px}.hero-actions .primary{padding:13px 19px}.hero-small{left:-10px;width:110px;bottom:-18px}.hero-small img{height:100px}.hero-seal{width:65px;height:65px}.hero-seal span{font-size:8px}.hero-seal i{font-size:16px}.contact{gap:20px;flex-wrap:wrap;justify-content:center;text-align:center}.contact>div:first-child{width:100%}.socials{justify-content:center}.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.highlights{grid-template-columns:repeat(4,minmax(0,1fr))}.highlights .card h3{font-size:17px}.highlights .card{padding:7px 7px 13px}.highlights .card-caption{font-size:9px}.highlights .price{font-size:11px}.highlights .card>.details{font-size:9px;padding:8px 2px}.how-to ol{gap:20px}.how-to li{padding-left:45px}.how-to h3{font-size:17px}.how-to li p{font-size:10px}}
@media(max-width:650px){html{scroll-padding-top:20px}.topline{font-size:8px;letter-spacing:1px;padding:8px}.topline .inline-heart{width:13px;height:13px}header{padding:18px 20px;gap:14px;flex-wrap:wrap}.logo-mark{width:46px;height:46px;margin:0 10px 0 0}.brand{font-size:17px}.brand em{font-size:25px}.brand small{font-size:6px;letter-spacing:1px}nav{gap:18px;margin-left:auto}nav>a:first-child{display:none}.navlabel{display:none}nav a{font-size:10px}nav button{padding:8px;gap:4px}nav .inline-heart{width:21px;height:21px}nav b{width:18px;height:18px;font-size:9px}.hero{grid-template-columns:1fr;padding:35px 25px 52px;gap:36px}.hero-copy{text-align:center}.hero-copy>.eyebrow{justify-content:center;font-size:7px;letter-spacing:1.4px}h1{font-size:46px;letter-spacing:-1.6px;line-height:1.17;margin:19px 0}.hero-copy>p{max-width:310px;margin:0 auto 23px;font-size:12px;line-height:1.9}.hero-actions{justify-content:center;gap:20px}.primary{font-size:11px}.hero-actions .primary{padding:13px 20px}.signature{justify-content:center;font-size:9px;margin-top:21px}.hero-collage{width:100%;max-width:350px;margin:0 auto;padding:0 23px 16px 33px}.hero-photo{height:340px}.hero-frame{padding:7px 7px 27px}.photo-label{font-size:15px}.hero-small{width:108px;left:0;bottom:-13px}.hero-small img{height:103px}.hero-small span{font-size:7px}.hero-seal{right:3px;top:12px}.hero-heart{width:24px;right:1px;bottom:30px}.section,.contact{margin-left:20px;margin-right:20px}.contact{margin-top:16px;padding:23px 20px}.contact h2{font-size:21px;line-height:1.4}.socials{width:100%;gap:7px}.socials a,.socials button{font-size:9px;padding:9px 10px;gap:5px;min-height:40px}.social-icon{width:22px;height:22px}.section{margin-top:52px;margin-bottom:52px}.section-heading{align-items:flex-start;gap:12px;flex-wrap:wrap}.section-heading>div{max-width:100%}h2{font-size:29px}.section-heading h2{margin-bottom:16px}.section-heading h2 .inline-heart{width:24px;height:24px;margin-left:1px}.section-heading>a{margin:-5px 0 15px;font-size:10px}.subnote{font-size:10px;margin:0 0 22px}.grid,.highlights{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}.card,.highlights .card{padding:7px 7px 12px;border-radius:10px}.card h3,.highlights .card h3{font-size:17px;margin-left:5px;margin-right:5px;min-height:47px;display:flex;align-items:center}.tag{margin:12px 5px 4px;font-size:7px;letter-spacing:.9px;min-height:12px}.card-caption,.highlights .card-caption{font-size:9px;min-height:43px;margin:0 5px 10px}.card>.price,.highlights .price{font-size:11px;margin-left:5px;margin-right:5px}.price small{font-size:8px}.card>.details,.highlights .card>.details{font-size:9px;padding:8px 1px;margin:12px 3px 0}.heart{width:33px;height:33px;right:7px;top:7px}.heart img{width:23px;height:23px}.themes{padding:34px 20px}.themes h2{font-size:28px;line-height:1.25}.themes>p{font-size:11px}.themes:before{top:18px;left:16px;width:17px;height:17px}.themes:after{bottom:15px;right:14px;width:17px;height:17px}.theme-buttons{gap:8px;margin-top:24px}.theme-buttons button{padding:10px 15px;min-height:40px}.theme-buttons strong{font-size:13px}.search{width:100%;margin:0 0 9px;padding:10px 12px}.search input{width:100%;font-size:11px}.filters{gap:6px;margin-top:11px}.filters button{font-size:9px;padding:8px 10px;min-height:35px}.filterbar{flex-wrap:wrap;gap:8px;padding:14px 0}.filterbar>span{width:100%;font-size:10px;margin-bottom:3px}.filterbar select{font-size:9px;padding:8px;max-width:calc(50% - 4px);flex:1;min-width:0}.filterbar>button{font-size:9px;margin-left:auto}.how-to{padding-top:33px}.how-to h2{font-size:27px}.how-to ol{grid-template-columns:1fr;gap:25px;margin-top:26px}.how-to li{padding-left:54px}.how-to h3{font-size:20px}.how-to li p{font-size:11px}.closing{padding:22px 20px 37px}.footer-illustration{width:250px;margin:-13px auto -25px}.closing h2{font-size:29px}.closing p{font-size:11px}.closing .primary{font-size:11px}footer{padding:28px 20px}dialog{padding:35px 20px 22px;border-radius:13px;max-height:94dvh;width:calc(100% - 22px)}#detail-content{grid-template-columns:1fr;gap:16px}.gallery-stage{height:350px}.gallery-nav{top:155px;width:37px;height:37px}.gallery-body h2{font-size:28px}.gallery-body p{font-size:11px;line-height:1.8;margin:14px 0}.gallery-body .gallery-help{font-size:10px}.gallery-favorite{margin-top:18px;min-height:45px}.gallery-caption{font-size:10px;margin-top:9px}.gallery-thumbs{padding-bottom:2px}.gallery-body>.eyebrow{font-size:8px}.saved-row{gap:9px}.saved-photo{width:43px;height:56px}.saved-row h3{font-size:17px}.saved-row>button{font-size:9px}.variant-name{font-size:9px}#saved>.primary{font-size:10px;padding:12px 15px}#total{font-size:11px}#saved>h2{font-size:27px}}
@media(max-width:370px){header{padding:16px}.brand{font-size:15px}.brand em{font-size:23px}.logo-mark{width:40px;height:40px}nav{gap:12px}nav a{font-size:9px}h1{font-size:40px}.hero{padding-left:18px;padding-right:18px}.section,.contact{margin-left:15px;margin-right:15px}.socials a,.socials button{padding:8px}.social-icon{width:20px;height:20px}.card h3,.highlights .card h3{font-size:16px}.gallery-stage{height:300px}.gallery-nav{top:130px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
