@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Fraunces:opsz,wght,SOFT,WONK@9..144,600,40,1;9..144,700,40,1;9..144,800,40,1&display=swap');
:root{color-scheme:light;--paper:#f3e7da;--ink:#292133;--berry:#b33762;--blue:#315d88;--line:#a68680}
*{box-sizing:border-box}html{min-width:280px;background:var(--paper)}
body{margin:0;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;background:radial-gradient(circle at 58% 40%,#fff8eb 0,transparent 40%),var(--paper)}
button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
.site-shell{min-height:100svh;max-width:1800px;margin:auto;padding:max(1.1rem,env(safe-area-inset-top)) max(1.2rem,env(safe-area-inset-right)) max(1.1rem,env(safe-area-inset-bottom)) max(1.2rem,env(safe-area-inset-left));display:flex;flex-direction:column}
.topline{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--ink);padding:0 0 1rem}
.brand{text-decoration:none;display:inline-flex;align-items:center;gap:.55rem;color:var(--ink);font-size:1.03rem;font-weight:800;letter-spacing:.14em;white-space:nowrap}.brand strong{color:var(--berry)}.brand-flower{font-size:2rem;line-height:.6;color:var(--berry)}
.date{color:var(--blue);font-size:.7rem;font-weight:800;letter-spacing:.14em;text-align:right}.date span{color:var(--berry);padding-right:.5em}
main{flex:1;display:flex;flex-direction:column}.hero{flex:1;min-height:0;display:grid;grid-template-columns:minmax(290px,.72fr) minmax(0,1.28fr);align-items:center;gap:clamp(1rem,2vw,3rem);padding:1.5rem 0 1rem}
.story{position:relative;z-index:1;max-width:33rem;padding-left:clamp(.25rem,2vw,2rem)}
.kicker{font-size:.73rem;font-weight:800;color:var(--blue);text-transform:uppercase;letter-spacing:.17em;line-height:1.55;margin:0 0 1.8rem}
h1{font-family:Fraunces,Georgia,serif;letter-spacing:-.065em;font-size:clamp(4.5rem,8.1vw,9rem);line-height:.84;margin:0 0 2rem;text-wrap:balance}h1 em{display:block;font-weight:700;color:var(--berry);font-style:italic;margin-left:.18em}
.lede{font-family:Fraunces,Georgia,serif;font-size:clamp(1.55rem,2.25vw,2.5rem);line-height:1.2;max-width:24rem;margin:0}.story-rule{width:7rem;height:3px;background:var(--berry);margin:1.6rem 0 1.3rem}.coming{font-size:clamp(.9rem,1.05vw,1.1rem);line-height:1.55;max-width:23rem;color:#504650;margin:0}
.view-switch{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:2rem}.view-button{border:1px solid #715c60;border-radius:100px;color:var(--ink);background:#fff9efb5;padding:.85rem 1.06rem;min-height:44px;font:700 .75rem 'DM Sans',Arial,sans-serif;letter-spacing:.04em;cursor:pointer;transition:background .18s,color .18s,transform .18s}.view-button span{opacity:.65;padding-right:.35rem}.view-button.selected{background:var(--ink);color:white;border-color:var(--ink)}.view-button:hover{transform:translateY(-2px)}
.scene{min-width:0;position:relative;align-self:stretch;display:flex;align-items:center;justify-content:center;padding:2rem 1rem 3rem}.sunburst{position:absolute;width:min(65vw,850px);height:min(65vw,850px);border-radius:50%;background:repeating-conic-gradient(from 0deg,#f5be5366 0 7deg,transparent 7deg 19deg);opacity:.55;mask-image:radial-gradient(circle,transparent 0 34%,#000 35% 100%);pointer-events:none}
.art-frame{position:relative;width:min(100%,1000px);margin:0;transform:rotate(-2deg);transition:transform .45s ease;filter:drop-shadow(0 22px 19px #47332835)}.art-frame:hover{transform:rotate(0deg) translateY(-5px)}.art-frame img{display:block;width:100%;height:auto;border:8px solid #fff4e5;background:#fff4e5;box-shadow:0 0 0 1px #a67e66}.art-frame figcaption{position:absolute;bottom:-1.2rem;right:-1rem;display:flex;flex-direction:column;gap:.15rem;max-width:19rem;background:#f4d76d;color:var(--ink);border:1px solid var(--ink);box-shadow:4px 4px 0 var(--ink);padding:.8rem 1rem;font-family:Fraunces,Georgia,serif;font-size:1.08rem;font-weight:700;line-height:1.1;transform:rotate(3deg)}.caption-label{font-family:'DM Sans',Arial,sans-serif;font-size:.58rem;font-weight:800;letter-spacing:.15em;color:#6d3553}
.spark{position:absolute;color:var(--berry);pointer-events:none}.spark-one{top:7%;right:8%;font-size:4rem}.spark-two{bottom:10%;left:5%;font-size:2.8rem;color:#d69c33}
.bottomline{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid var(--ink);font-size:.69rem;line-height:1.35;letter-spacing:.035em}.bottomline p{margin:.75rem 0}.bottomline p:last-child{text-align:right;color:#62585d}
@media(max-width:900px){.hero{grid-template-columns:minmax(250px,.85fr) minmax(0,1.15fr)}h1{font-size:clamp(4rem,8vw,6rem)}.scene{padding:1rem 0 2.5rem}.art-frame figcaption{right:0}}
@media(max-width:900px){.site-shell{padding-left:max(.9rem,env(safe-area-inset-left));padding-right:max(.9rem,env(safe-area-inset-right))}.topline{padding-bottom:.8rem}.brand{font-size:.88rem}.brand-flower{font-size:1.5rem}.date{font-size:.56rem}.hero{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:1.5rem 0 1rem}.story{padding:0;max-width:none}.kicker{font-size:.6rem;margin-bottom:.8rem}h1{font-size:clamp(3.5rem,10vw,6rem);margin:0 0 1rem}h1 em{display:inline;margin-left:0}.lede{font-size:1.4rem;max-width:none}.story-rule,.coming{display:none}.view-switch{margin-top:1rem;gap:.35rem}.view-button{font-size:.68rem;padding:.6rem .8rem}.scene{min-height:0;padding:1.5rem .5rem 2.5rem}.art-frame{width:100%;transform:rotate(-1.5deg)}.art-frame img{border-width:5px}.art-frame figcaption{bottom:-.85rem;right:-.25rem;padding:.5rem .6rem;font-size:.85rem}.caption-label{font-size:.49rem}.spark-one{font-size:2rem;right:0;top:0}.spark-two{font-size:1.7rem}.bottomline{align-items:flex-start;flex-direction:column;gap:0;font-size:.62rem}.bottomline p{margin:.5rem 0}.bottomline p:last-child{text-align:left}}
@media(max-width:390px){h1{font-size:clamp(3.4rem,14vw,5rem)}.date{max-width:9rem}.scene{padding-top:1rem}}
@media(prefers-reduced-motion:reduce){.view-button,.art-frame{transition:none}.view-button:hover,.art-frame:hover{transform:none}}
