@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=DM+Sans:wght@400;500;600&family=Parisienne&display=swap');

:root{
 --ink:#171318;--ivory:#fffdf9;--pink:#f4c8d8;--ballet:#e8afc4;--berry:#5a2638;--plum:#472033;--champ:#c8a96b;
 --paper:#f7eee8;--muted:#756a70;--line:rgba(23,19,24,.14);
 --serif:"Cormorant Garamond",Georgia,serif;--script:"Parisienne",cursive;--sans:"DM Sans",Arial,sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font-family:var(--sans);line-height:1.65}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,textarea,select{font:inherit}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.18;z-index:20;background-image:radial-gradient(rgba(23,19,24,.12) .6px,transparent .7px);background-size:6px 6px;mix-blend-mode:multiply}
.site-header{height:92px;padding:14px clamp(20px,5vw,76px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(255,253,249,.94);backdrop-filter:blur(14px);z-index:15}
.brand-mini{width:132px;height:64px;overflow:hidden;display:flex;align-items:center}.brand-mini img{width:155px;max-width:none;transform:translateX(-10px)}
.main-nav{display:flex;gap:clamp(15px,2.5vw,36px);align-items:center;font-size:.76rem;letter-spacing:.12em;text-transform:uppercase}
.main-nav a{position:relative;padding:8px 0}.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:1px;background:var(--berry);transition:.3s}.main-nav a:hover:after,.main-nav a.active:after{right:0}
.header-cta{font-size:.74rem;text-transform:uppercase;letter-spacing:.1em;border:1px solid var(--ink);padding:10px 16px}.header-cta span{font-size:1rem}
.nav-toggle{display:none;background:none;border:0}
.hero{min-height:calc(100vh - 92px);padding:clamp(55px,8vw,110px) clamp(22px,7vw,110px);display:grid;grid-template-columns:1.05fr .95fr;gap:7vw;align-items:center;position:relative;overflow:hidden}
.hero:before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;background:var(--pink);opacity:.28;right:-150px;top:-150px;filter:blur(2px)}
.eyebrow{font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--berry);font-weight:600;margin:0 0 16px}.eyebrow.light{color:var(--pink)}
h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:.98;margin:0 0 24px}h1{font-size:clamp(3.5rem,7vw,7.5rem);letter-spacing:-.045em}h2{font-size:clamp(2.7rem,5vw,5rem)}h3{font-size:1.8rem}em{font-family:var(--script);font-weight:400;color:var(--berry)}
.lede{font-size:1.05rem;max-width:620px;color:#554b50}.button-row{display:flex;align-items:center;gap:25px;margin-top:32px}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 22px;border:1px solid transparent;text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;transition:.25s;cursor:pointer}.btn-dark{background:var(--ink);color:var(--ivory)}.btn-dark:hover{background:var(--berry);transform:translateY(-2px)}.btn-light{background:var(--ivory);color:var(--plum)}.btn-outline{border-color:var(--ink)}.btn-outline:hover{background:var(--ink);color:var(--ivory)}
.text-link{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid var(--ink);padding-bottom:4px}
.scrapbook-card{width:min(510px,100%);min-height:540px;background:#f7e9e6;position:relative;transform:rotate(2deg);box-shadow:20px 25px 55px rgba(71,32,51,.12);justify-self:center}
.scrapbook-card:before{content:"";position:absolute;inset:14px;border:1px solid rgba(90,38,56,.2)}.tape{position:absolute;background:rgba(255,248,236,.68);width:115px;height:28px;transform:rotate(-5deg);z-index:2}.tape-top{top:-10px;left:36%}
.hero-card-inner{position:absolute;inset:70px 60px 65px;background:var(--ivory);padding:30px;display:flex;flex-direction:column;justify-content:space-between}.mini-label{font-size:.62rem;letter-spacing:.2em}.journal-illustration{position:relative;height:290px;display:grid;place-items:center}.journal-cover{width:190px;height:250px;background:var(--plum);color:var(--pink);box-shadow:16px 18px 0 var(--pink);transform:rotate(-7deg);padding:28px;font-family:var(--serif);font-size:3rem}.journal-cover small{display:block;font-family:var(--sans);font-size:.65rem;letter-spacing:.16em;text-transform:uppercase;margin-top:110px;color:var(--ivory)}.ribbon{position:absolute;width:20px;height:280px;background:var(--ballet);right:90px;transform:rotate(9deg);opacity:.9}.flower-scribble{position:absolute;left:12px;bottom:15px;font-size:4rem;color:var(--berry);font-family:var(--serif)}.hero-card-inner p{font-family:var(--serif);font-size:1.2rem;line-height:1.2}.hand-note{position:absolute;right:28px;bottom:22px;font-family:var(--script);font-size:1.5rem;color:var(--berry);transform:rotate(-4deg)}
.marquee-band{overflow:hidden;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);padding:10px 0;white-space:nowrap;font-size:.65rem;letter-spacing:.25em}.marquee-band div{animation:marquee 24s linear infinite}@keyframes marquee{to{transform:translateX(-40%)}}
.section{padding:clamp(70px,9vw,135px) clamp(22px,7vw,110px)}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:48px}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.product-card{position:relative}.product-card.raised{transform:translateY(-35px)}.product-placeholder{height:400px;display:flex;flex-direction:column;justify-content:space-between;padding:25px;margin-bottom:18px}.product-placeholder span{font-size:.65rem;letter-spacing:.18em}.product-placeholder b{font-family:var(--serif);font-size:2.5rem;font-weight:500;line-height:.85}.pink-paper{background:var(--pink)}.berry-paper{background:var(--berry);color:var(--ivory)}.ivory-paper{background:#eadfd8}.product-kicker{font-size:.65rem;text-transform:uppercase;letter-spacing:.15em;color:var(--berry);margin:0 0 5px}.product-card h3{margin:0 0 8px}.product-card>p:last-child{color:var(--muted);font-size:.9rem;margin-top:0}
.split-story{display:grid;grid-template-columns:1fr 1fr;min-height:680px;background:var(--paper)}.story-image{position:relative;display:grid;place-items:center;background:var(--pink);margin:70px;transform:rotate(-2deg);box-shadow:18px 22px 0 var(--ivory)}.tape-left{top:-12px;left:40%;transform:rotate(6deg)}.stamp{position:absolute;right:25px;top:25px;border:1px solid var(--berry);width:70px;height:70px;border-radius:50%;display:grid;place-items:center;text-align:center;font-family:var(--serif);color:var(--berry)}.collage-letter{width:58%;height:65%;background:var(--ivory);padding:45px 35px;box-shadow:9px 12px 0 rgba(90,38,56,.16);display:flex;flex-direction:column;justify-content:center}.collage-letter small{letter-spacing:.18em}.collage-letter strong{font-family:var(--serif);font-size:3.3rem;line-height:.9;font-weight:500;margin:30px 0}.collage-letter i{font-family:var(--script);font-size:1.8rem;color:var(--berry)}.story-copy{padding:100px clamp(30px,8vw,120px);align-self:center}.story-copy p{max-width:560px;color:var(--muted)}.story-copy .btn{margin-top:20px}
.velvet-preview{background:var(--plum);color:var(--ivory);display:grid;grid-template-columns:1fr 1fr;min-height:680px;overflow:hidden}.velvet-copy{padding:clamp(70px,9vw,130px);align-self:center}.velvet-copy h2{font-size:clamp(4rem,7vw,7rem)}.velvet-copy p:not(.eyebrow){color:#e9dce1;max-width:530px}.velvet-collage{position:relative;background:#5a2638;display:grid;place-items:center}.paper-stack{width:52%;height:63%;background:var(--ivory);transform:rotate(5deg);box-shadow:30px 30px 0 var(--pink)}.paper-stack:before{content:"";position:absolute;inset:18px;border:1px dashed var(--berry)}.quill{position:absolute;font-size:9rem;color:var(--berry);transform:rotate(-20deg);top:20%;left:30%}.pressed-flower{position:absolute;right:18%;top:18%;font-size:4rem;color:var(--champ)}.velvet-collage span{position:absolute;bottom:17%;left:23%;font-family:var(--script);font-size:2rem;color:var(--berry);transform:rotate(-4deg)}
.quote-section{text-align:center;padding:100px 25px}.quote{font-family:var(--serif);font-size:clamp(2rem,4vw,4rem);line-height:1.05;max-width:900px;margin:0 auto 20px}.quote-section>span{font-size:.6rem;letter-spacing:.25em}
.page-hero{padding:130px clamp(22px,7vw,110px) 110px;text-align:center;background:var(--paper)}.page-hero h1{font-size:clamp(4rem,8vw,8rem)}.page-hero>p:last-child{max-width:650px;margin:auto;color:var(--muted)}.plum-hero{background:var(--plum);color:var(--ivory)}.plum-hero h1 em{color:var(--pink)}
.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:9vw}.about-lead h2{max-width:650px}.chapter{font-size:.65rem;letter-spacing:.18em;color:var(--berry)}.about-layout>div:last-child p{max-width:650px;color:var(--muted);font-size:1.05rem}.values-strip{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.values-strip div{padding:40px;border-right:1px solid var(--line)}.values-strip div:last-child{border-right:0}.values-strip b{display:block;font-family:var(--serif);font-size:1.35rem}.values-strip span{font-size:.78rem;color:var(--muted)}.founder-note{background:var(--pink)}.note-paper{background:var(--ivory);max-width:900px;margin:auto;padding:clamp(35px,7vw,90px);box-shadow:20px 25px 0 rgba(90,38,56,.12);transform:rotate(-1deg)}.note-paper h2{max-width:760px}.note-paper p:last-child{max-width:680px;color:var(--muted)}
.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);padding:0}.service-grid article{background:var(--ivory);padding:55px}.service-grid article span{font-size:.65rem;color:var(--berry);letter-spacing:.18em}.service-grid h2{font-size:2.8rem;margin:15px 0}.service-grid p{color:var(--muted);max-width:550px}.service-grid a{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;border-bottom:1px solid var(--ink)}
.catalogue{padding-top:60px}.filter-row{display:flex;justify-content:space-between;border-bottom:1px solid var(--ink);padding:15px 0;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:40px}.catalogue-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.catalogue-art{height:350px;display:grid;place-items:center;margin-bottom:18px;position:relative}.catalogue-art span{font-family:var(--serif);font-size:2rem;transform:rotate(-6deg)}.art-one{background:var(--pink)}.art-two{background:#eadfd8}.art-three{background:var(--berry);color:var(--ivory)}.art-four{background:#dfc7a9}.catalogue-card h3{font-size:1.7rem;margin-bottom:5px}.catalogue-card p{font-size:.82rem;color:var(--muted);min-height:50px}.catalogue-card strong{font-size:.65rem;text-transform:uppercase;letter-spacing:.12em;color:var(--berry)}
.calendar-section{background:var(--paper)}.calendar-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:35px}.calendar{background:var(--ivory);border:1px solid var(--line);box-shadow:10px 15px 35px rgba(71,32,51,.06)}.cal-toolbar{display:flex;justify-content:space-between;align-items:center;padding:22px;border-bottom:1px solid var(--line)}.cal-toolbar h3{margin:0;font-size:2rem}.cal-toolbar button{border:1px solid var(--line);background:transparent;width:38px;height:38px;cursor:pointer}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr)}.cal-day-name{padding:13px;text-align:center;font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line)}.cal-cell{min-height:125px;padding:10px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-size:.75rem}.cal-cell:nth-child(7n){border-right:0}.cal-cell.muted{opacity:.35}.cal-date{font-size:.7rem}.event-pill{margin-top:12px;padding:8px;background:var(--pink);color:var(--plum);font-size:.68rem;line-height:1.2;cursor:pointer}.event-pill:hover{background:var(--ballet)}.event-note{display:grid;grid-template-columns:1fr 1fr;gap:10vw}.event-note p{color:var(--muted);align-self:center}.event-modal{position:fixed;inset:0;background:rgba(23,19,24,.55);display:grid;place-items:center;z-index:50;padding:25px}.event-modal-card{background:var(--ivory);max-width:620px;width:100%;padding:50px;position:relative}.event-modal-close{position:absolute;right:20px;top:20px;border:0;background:none;font-size:1.5rem}.event-modal-card h2{margin-top:10px}.event-modal-card p{color:var(--muted)}
.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:10vw;background:var(--paper)}.letter-card{background:var(--ivory);padding:65px;position:relative;box-shadow:15px 18px 0 var(--pink);transform:rotate(-1deg)}.letter-card h2{font-size:3.2rem}.letter-card p:not(.eyebrow){color:var(--muted)}.stamp{z-index:2}.small-note{font-size:.72rem;margin-top:50px}.contact-form{display:flex;flex-direction:column;gap:22px;align-self:center}.contact-form label{font-size:.65rem;text-transform:uppercase;letter-spacing:.12em}.contact-form input,.contact-form textarea,.contact-form select{display:block;width:100%;border:0;border-bottom:1px solid var(--ink);background:transparent;padding:12px 0;outline:none;color:var(--ink);resize:vertical}.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{border-color:var(--berry)}.contact-form .honeypot{display:none}.contact-form button{align-self:flex-start}.contact-form #formStatus{font-size:.8rem;color:var(--berry)}
.site-footer{background:var(--ink);color:var(--ivory);padding:70px clamp(22px,7vw,110px) 25px}.footer-main{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:50px;padding-bottom:60px}.footer-logo{width:210px;filter:brightness(0) invert(1);margin-bottom:15px}.footer-main p{font-family:var(--serif);font-size:1.4rem;color:#d7c9ce}.footer-main h4{font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;color:var(--pink);margin-top:0}.footer-main a,.footer-main span{display:block;font-size:.78rem;color:#d7c9ce;margin:7px 0}.footer-bottom{border-top:1px solid rgba(255,255,255,.18);padding-top:18px;display:flex;justify-content:space-between;font-size:.62rem;color:#a99da2;letter-spacing:.08em;text-transform:uppercase}
.intro-page{overflow:hidden}.intro-stage{height:100vh;min-height:650px;background:var(--ivory);display:grid;place-items:center;position:relative;overflow:hidden}.paper-grain{position:absolute;inset:0;background:radial-gradient(rgba(90,38,56,.12) .6px,transparent .7px);background-size:7px 7px;opacity:.2}.intro-logo-wrap{position:relative;z-index:3;text-align:center;width:min(850px,88vw);opacity:0;animation:introReveal 1.6s 2.8s forwards}.intro-logo{width:min(820px,100%);margin:auto;filter:drop-shadow(0 20px 20px rgba(90,38,56,.08))}.intro-tagline{font-family:var(--script);font-size:1.5rem;color:var(--berry);margin:-15px 0 25px}.intro-enter{display:inline-flex;gap:12px;border-bottom:1px solid var(--ink);padding-bottom:7px;text-transform:uppercase;letter-spacing:.18em;font-size:.65rem}.intro-enter span{transition:.25s}.intro-enter:hover span{transform:translateX(5px)}.floating-sparkle{position:absolute;color:var(--champ);opacity:0;animation:sparkle 4s 1.8s infinite}.sparkle-a{top:20%;left:18%}.sparkle-b{bottom:18%;right:18%;animation-delay:2.3s}.intro-motif{position:absolute;z-index:4;left:8%;top:20%;width:55px;height:45px;animation:butterflyFlight 3s cubic-bezier(.3,.7,.2,1) forwards}.wing{position:absolute;width:27px;height:34px;background:var(--berry);border-radius:70% 20% 70% 20%;box-shadow:inset 0 0 0 3px rgba(255,255,255,.18)}.wing-a{transform:rotate(-28deg);left:0}.wing-b{transform:scaleX(-1) rotate(-28deg);right:0}.body{position:absolute;width:6px;height:38px;background:var(--ink);left:24px;top:3px;border-radius:50%}.intro-motif:after,.intro-motif:before{content:"";position:absolute;width:18px;height:20px;border-top:2px solid var(--champ);border-radius:50%;top:-11px}.intro-motif:before{left:7px;transform:rotate(-30deg)}.intro-motif:after{right:7px;transform:rotate(30deg)}
@keyframes butterflyFlight{0%{transform:translate(0,0) rotate(-8deg) scale(.75);opacity:0}12%{opacity:1}45%{transform:translate(38vw,10vh) rotate(12deg) scale(1)}75%{transform:translate(48vw,34vh) rotate(-6deg) scale(.95)}100%{transform:translate(44vw,39vh) rotate(3deg) scale(.65);opacity:0}}@keyframes introReveal{to{opacity:1}}@keyframes sparkle{0%,100%{opacity:0;transform:scale(.7) rotate(0)}30%,70%{opacity:.8;transform:scale(1) rotate(30deg)}}
@media(max-width:900px){.main-nav{display:none;position:absolute;top:92px;left:0;right:0;background:var(--ivory);padding:25px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.main-nav.open{display:flex}.nav-toggle{display:block;width:42px;height:42px}.nav-toggle span{display:block;width:23px;height:1px;background:var(--ink);margin:7px auto}.header-cta{display:none}.hero,.split-story,.velvet-preview,.about-layout,.contact-layout,.event-note{grid-template-columns:1fr}.hero{padding-top:70px}.hero-card{margin-top:25px}.product-grid,.catalogue-grid{grid-template-columns:repeat(2,1fr)}.product-card.raised{transform:none}.story-image{margin:45px 35px;min-height:520px}.story-copy{padding:70px 35px}.velvet-collage{min-height:520px}.footer-main{grid-template-columns:1fr 1fr}.values-strip{grid-template-columns:1fr 1fr}.values-strip div:nth-child(2){border-right:0}.values-strip div{border-bottom:1px solid var(--line)}}
@media(max-width:560px){h1{font-size:3.7rem}.page-hero h1{font-size:4.2rem}.product-grid,.catalogue-grid,.service-grid,.values-strip{grid-template-columns:1fr}.product-placeholder{height:330px}.collage-letter{width:72%;height:65%}.collage-letter strong{font-size:2.5rem}.footer-main{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:10px}.calendar{overflow:auto}.cal-grid{min-width:700px}.calendar-head,.section-heading{align-items:flex-start;gap:20px;flex-direction:column}.intro-stage{min-height:560px}.intro-logo{width:96vw}.intro-motif{animation-name:butterflyFlightMobile}.intro-tagline{font-size:1.25rem}@keyframes butterflyFlightMobile{0%{transform:translate(0,0) scale(.7);opacity:0}12%{opacity:1}45%{transform:translate(35vw,7vh) scale(1)}75%{transform:translate(34vw,30vh) scale(.9)}100%{transform:translate(28vw,35vh) scale(.5);opacity:0}}}
