:root{--ink:#302029;--muted:#8e7982;--pink:#db6c91;--rose:#a93e65;--pale:#f9e7ec;--paper:#fffbfa;--line:#efdee2}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid #b6416a;outline-offset:4px}img{display:block;max-width:100%}.topbar{height:86px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;background:rgba(255,251,250,.88);position:relative;z-index:3}.brand{display:flex;align-items:center;gap:11px;font-size:12px;letter-spacing:.12em;line-height:1.1}.brand-mark{font-size:37px;line-height:1;color:#d66c91}.brand small{display:block;color:#b69ca5;font-size:8px;letter-spacing:.19em;margin-top:5px}.topbar nav{display:flex;gap:38px;font-size:12px;font-weight:600;color:#75616b}.topbar nav a:hover,.text-link:hover{color:var(--pink)}.header-link{border:1px solid #ead5dc;border-radius:100px;padding:12px 19px;font-size:11px;font-weight:700}.header-link span{color:var(--pink);margin-left:10px}.hero{min-height:640px;background:linear-gradient(115deg,#fae9ed,#f9e8ed 55%,#f6dce6);display:grid;grid-template-columns:1fr 1fr;overflow:hidden;padding:0 9%;position:relative}.hero-copy{align-self:center;position:relative;z-index:1;padding:55px 0 55px}.eyebrow{font-size:10px;letter-spacing:.18em;color:#a65a73;font-weight:700}.sparkle{font-size:16px;margin-right:8px;color:#dc7195}.hero h1,.section h2,.closing h2{font-family:'Playfair Display',Georgia,serif;font-weight:500;letter-spacing:-.045em}.hero h1{font-size:clamp(54px,5.7vw,82px);line-height:1.08;margin:24px 0}.hero h1 em,.section h2 em,.closing h2 em{color:#bd6381;font-weight:500}.hero-copy>p,.section-heading p,.download-intro p{color:#88717b;font-size:15px;line-height:1.8;max-width:390px}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:32px}.button{border:0;border-radius:100px;display:inline-flex;align-items:center;justify-content:center;gap:25px;font-size:12px;font-weight:700;cursor:pointer;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.primary{padding:18px 23px;background:#ad4c6d;color:white;box-shadow:0 10px 25px #bc668640}.primary span{font-size:17px}.text-link{font-size:12px;font-weight:700}.text-link span{color:var(--pink);margin-left:8px}.hero-note{display:flex;align-items:center;gap:12px;margin-top:77px;color:#a57f8c;font-size:9px;letter-spacing:.11em;line-height:1.5}.hero-note b{font-family:'Playfair Display',serif;text-transform:none;font-size:13px;font-weight:500;letter-spacing:0;color:#8c6975}.heart{height:35px;width:35px;display:grid;place-items:center;border:1px solid #dfbec9;border-radius:50%;color:#cd7593}.hero-art{position:relative;min-height:640px}.art-glow{position:absolute;width:450px;height:450px;border-radius:50%;background:#f3cbd9;left:12%;top:15%;filter:blur(1px)}.photo-frame{position:absolute;background:#fff;padding:8px;box-shadow:0 22px 50px #a9567435;overflow:hidden}.photo-frame img{width:100%;height:100%;object-fit:cover}.frame-one{width:48%;height:69%;left:12%;top:15%;transform:rotate(-7deg);border-radius:180px 180px 8px 8px}.frame-two{width:39%;height:53%;left:54%;top:27%;transform:rotate(8deg);border-radius:180px 180px 8px 8px}.floating-label{position:absolute;left:3%;top:68%;background:#fffaf9;padding:15px 22px;border-radius:100px;box-shadow:0 8px 25px #ae66842b;font-family:'Playfair Display',serif;font-style:italic;color:#a95875;font-size:16px;transform:rotate(-7deg)}.floating-label span{color:#dd85a3;margin-right:7px}.art-star{position:absolute;right:1%;top:13%;color:#c76286;font-size:43px}.art-caption{position:absolute;bottom:9%;right:6%;font-size:9px;letter-spacing:.15em;color:#a77384;font-weight:700}.art-caption span{margin:0 8px}.marquee{overflow:hidden;background:#b65b7a;color:#fff4f7;padding:15px 0;font-size:9px;font-weight:700;letter-spacing:.2em;white-space:nowrap}.marquee div{width:max-content;animation:marquee 32s linear infinite}.marquee span{margin:0 40px;color:#ffd6e2}@keyframes marquee{to{transform:translateX(-50%)}}.section{padding:110px 8%}.section-heading{display:flex;justify-content:space-between;align-items:end}.section h2,.closing h2{font-size:clamp(42px,4.2vw,62px);line-height:1.1;margin:18px 0 12px}.section-heading p{margin:0}.collection-count{text-align:right}.collection-count span{display:block;color:#bd9da8;letter-spacing:.14em;font-size:9px;font-weight:700}.collection-count b{display:block;font-family:'Playfair Display',serif;font-size:18px;font-weight:500;margin-top:7px}.gallery-toolbar{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-top:40px;padding:23px 0}.filters{display:flex;gap:7px;flex-wrap:wrap}.filter{background:transparent;border:1px solid transparent;border-radius:100px;padding:11px 17px;color:#8c7880;font-size:11px;font-weight:700;cursor:pointer}.filter span{margin-left:4px;color:#bd9da8;font-size:10px}.filter.active{background:#f7e5eb;color:#a84869}.filter.active span{color:#c77893}.gallery-hint{font-family:'Playfair Display',serif;font-size:13px;font-style:italic;color:#b79da6}.gallery-hint span{font-size:19px;color:#d7829d;margin-left:5px}.gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.media-card{border:0;padding:0;position:relative;overflow:hidden;border-radius:12px;background:#f2e3e6;aspect-ratio:4/5;cursor:pointer;text-align:left}.media-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.media-card:hover img{transform:scale(1.06)}.media-card:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,rgba(39,16,25,.35));pointer-events:none}.card-label,.play-badge{position:absolute;z-index:1;color:white;font-size:10px;font-weight:700;letter-spacing:.1em}.card-label{bottom:16px;left:17px}.play-badge{right:15px;top:15px;background:#ffffffdd;color:#8b3a59;border-radius:50%;width:38px;height:38px;display:grid;place-items:center;font-size:13px}.gallery-status{text-align:center;color:#ad929d;font-size:11px;margin:28px 0 18px}.more{display:flex;margin:auto;background:#fff;border:1px solid #e9d7dd;padding:16px 23px;color:#714e5c}.more span{color:#c66b89}.downloads{background:#f9e9ee;display:grid;grid-template-columns:1fr 1.3fr;gap:30px 9%}.download-intro p{max-width:330px}.download-list{display:grid;gap:10px}.download-item{background:#fffafa;border:1px solid #f1dce3;border-radius:16px;padding:14px 15px;display:flex;align-items:center;gap:14px}.download-icon{flex:none;background:#fae9ee;border-radius:12px;color:#bd6684;width:44px;height:44px;display:grid;place-items:center;font-size:20px}.download-copy{flex:1;min-width:0}.download-copy b{display:block;font-size:13px}.download-copy small{display:block;color:#aa909a;font-size:10px;margin-top:5px}.download-action{border:0;background:#f8e6ec;border-radius:100px;color:#a94d6c;font-size:10px;font-weight:700;padding:12px 16px;cursor:pointer;white-space:nowrap}.download-action:hover{background:#efd2dc}.download-action:disabled{opacity:.7;cursor:wait}.download-footnote{grid-column:2;color:#b1929d;font-size:10px;margin:0}.download-footnote span{color:#cb7893}.closing{text-align:center;padding:90px 20px 95px}.closing>span{font-size:36px;color:#d7829f}.closing p{font-size:9px;letter-spacing:.18em;color:#b5909d;font-weight:700}.closing h2{margin:18px 0 25px}.closing a{font-size:11px;font-weight:700;color:#af607c}footer{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:25px 8%;font-size:10px;color:#ad929c}footer p{margin:0}.footer-brand{font-size:11px;letter-spacing:.1em;color:#5d3c49}.footer-brand span{color:#cf7493;margin-left:5px}dialog{width:100%;height:100%;max-width:none;max-height:none;margin:0;border:0;background:rgba(34,21,28,.97);color:white;padding:22px 4%;overflow:hidden}dialog::backdrop{background:#24151cd9}.viewer-top,.viewer-bottom{height:7%;display:flex;justify-content:space-between;align-items:center;font-size:11px;letter-spacing:.08em;color:#e4c7d0}.icon-button,.viewer-arrow{background:none;border:0;color:white;cursor:pointer;font-size:32px}.viewer-body{height:86%;display:flex;align-items:center;justify-content:space-between;gap:20px}.viewer-arrow{font-size:45px;opacity:.7}.viewer-arrow:disabled{opacity:.2;cursor:default}#viewer-media{height:100%;flex:1;display:flex;align-items:center;justify-content:center;min-width:0}#viewer-media img,#viewer-media video{max-width:100%;max-height:100%;object-fit:contain;border-radius:6px}.viewer-bottom a{color:white}body:has(dialog[open]){overflow:hidden}@media(max-width:800px){.topbar{height:72px;padding:0 5%}.topbar nav{display:none}.header-link{padding:10px 14px}.hero{grid-template-columns:1fr;padding:0 7%;min-height:0}.hero-copy{padding:65px 0 0}.hero h1{font-size:clamp(48px,10vw,68px)}.hero-note{margin-top:38px}.hero-art{min-height:460px}.frame-one{height:72%;width:45%;left:14%;top:12%}.frame-two{height:55%;width:38%;left:53%;top:25%}.art-glow{width:320px;height:320px;left:15%}.art-caption{bottom:7%}.section{padding:75px 6%}.gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.gallery-hint{display:none}.downloads{grid-template-columns:1fr;gap:25px}.download-footnote{grid-column:1}footer{gap:20px;flex-wrap:wrap}footer p{display:none}}@media(max-width:480px){.brand{font-size:10px}.brand-mark{font-size:30px}.brand small{font-size:7px}.hero-copy>p{font-size:14px}.hero-actions{gap:16px}.primary{padding:16px 18px;gap:12px}.text-link{font-size:11px}.hero-art{min-height:390px}.art-glow{width:260px;height:260px}.floating-label{font-size:13px;padding:12px 15px}.art-star{font-size:30px}.section-heading{align-items:start}.collection-count{padding-top:8px}.collection-count span{font-size:8px}.collection-count b{font-size:15px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.filter{padding:10px 12px;font-size:10px}.card-label{font-size:9px}.viewer-body{gap:4px}.viewer-arrow{font-size:35px}.download-item{gap:10px}.download-action{padding:11px}.closing{padding:75px 20px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
[hidden]{display:none!important}.primary{white-space:nowrap}
