:root{
  --blue:#49a4c3;
  --blue-deep:#3593b2;
  --cream:#f3f0d5;
  --green:#78b856;
  --yellow:#efbd51;
  --pink:#ef8ba8;
  --coral:#f39a78;
  --lilac:#bf9bd9;
  --ink:#151515;
  --white:#fffdf2;
  --shadow:0 18px 40px rgba(21,21,21,.08);
  --radius:30px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--blue);color:var(--ink);font-family:"Trebuchet MS",Arial,sans-serif;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
img{max-width:100%;display:block}
.site-shell{max-width:1280px;margin:0 auto;background:var(--cream);box-shadow:0 0 0 1px rgba(255,255,255,.12),0 30px 70px rgba(0,0,0,.18)}
.wrap{width:min(1120px,calc(100% - 64px));margin-inline:auto;position:relative}
.section{position:relative;padding:92px 0}
.blue{background:var(--blue);color:var(--white)}
.cream{background:var(--cream)}
.yellow{background:var(--yellow)}

.nav{height:76px;display:flex;align-items:center;gap:34px;color:var(--white);z-index:10}
.brand{font-weight:900;letter-spacing:-.04em;text-transform:lowercase;display:inline-flex;align-items:center;gap:6px}
.brand-small{font-size:24px;margin-right:auto}
.brand-mark{font-size:20px;line-height:1}
.nav-links{display:flex;gap:26px;font-size:13px;font-weight:700;text-transform:lowercase}
.nav-links a{opacity:.95;position:relative}
.nav-links a::after{content:"";position:absolute;left:0;right:100%;bottom:-6px;height:2px;background:var(--white);transition:right .25s ease}
.nav-links a:hover::after{right:0}
.pill{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 20px;border-radius:999px;font-weight:900;font-size:13px;transition:transform .2s ease,box-shadow .2s ease}
.pill:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(0,0,0,.12)}
.cta{background:#93ce54;color:#fff;min-width:96px}
.light{background:var(--white);color:var(--blue-deep);margin-top:18px}
.green{background:var(--green);color:#fff}
.menu-toggle{display:none;background:transparent;border:0;color:#fff;font-size:24px}

.hero{background:var(--blue);min-height:570px;position:relative;color:var(--white);overflow:hidden}
.hero-inner{min-height:490px;display:grid;grid-template-columns:1fr 1.08fr;align-items:center;gap:50px;padding-bottom:60px}
.hero-copy{position:relative;z-index:4;max-width:480px}
.script-kicker{font-family:"Brush Script MT",cursive;font-size:42px;line-height:.9;margin:0 0 -8px 78px;transform:rotate(-4deg)}
.hero h1{font-size:88px;line-height:.8;margin:0;letter-spacing:-.08em;text-transform:lowercase;font-weight:900}
.outline-heart{font-family:Georgia,serif;font-weight:400;display:inline-block;transform:rotate(-12deg);font-size:.68em;margin-right:-8px}
.hero-copy>p:not(.script-kicker){font-size:16px;line-height:1.6;max-width:390px;margin-top:26px;color:rgba(255,255,255,.92)}
.hero-art{position:relative;height:430px}
.cloud,.float-cloud{position:absolute;width:128px;height:46px;background:var(--white);border-radius:999px;filter:drop-shadow(0 10px 12px rgba(0,0,0,.05))}
.cloud::before,.cloud::after,.float-cloud::before,.float-cloud::after{content:"";position:absolute;background:inherit;border-radius:50%}
.cloud::before,.float-cloud::before{width:60px;height:60px;left:18px;bottom:8px}
.cloud::after,.float-cloud::after{width:78px;height:78px;right:12px;bottom:4px}
.cloud-a{right:0;top:24px;transform:scale(.66)}
.cloud-b{left:20px;bottom:52px;transform:scale(.78)}
.cloud-c{right:90px;bottom:10px;transform:scale(.48)}
.blob{position:absolute;display:grid;place-items:center;background:#f6f3e2;border:4px solid rgba(255,255,255,.5);box-shadow:var(--shadow)}
.blob-a{width:185px;height:154px;left:15px;top:66px;border-radius:46% 54% 61% 39%/58% 38% 62% 42%;transform:rotate(-14deg)}
.blob-b{width:170px;height:188px;right:18px;top:145px;border-radius:64% 36% 47% 53%/40% 54% 46% 60%;transform:rotate(11deg)}
.blob-c{width:145px;height:130px;left:170px;bottom:8px;border-radius:54% 46% 34% 66%/46% 54% 46% 54%;transform:rotate(5deg)}

.scallop{position:absolute;left:0;right:0;bottom:-1px;height:34px;z-index:3;background-size:54px 34px;background-repeat:repeat-x}
.scallop-cream{background-image:radial-gradient(circle at 27px 0,transparent 0 25px,var(--cream) 26px 34px)}
.scallop-blue{background-image:radial-gradient(circle at 27px 0,transparent 0 25px,var(--blue) 26px 34px)}

.week{padding-top:118px;padding-bottom:70px;overflow:hidden}
.section-title{font-weight:900;letter-spacing:-.07em}
.week-title{font-size:70px;line-height:.8;display:flex;justify-content:center;align-items:flex-end;gap:12px;flex-wrap:wrap;text-align:center}
.week-title small{font-family:Georgia,serif;font-style:italic;font-size:28px;font-weight:400;letter-spacing:0;margin-bottom:11px}
.week-title em{font-family:"Brush Script MT",cursive;color:var(--pink);font-size:58px;font-weight:400;letter-spacing:0}
.week-collage{margin:44px auto 0;max-width:800px;display:grid;grid-template-columns:1fr 1.25fr 1fr;align-items:center;gap:20px}
.mini-frame{height:210px;background:#f0d9cc;border-radius:48% 52% 35% 65%/42% 48% 52% 58%;display:grid;place-items:center;position:relative;box-shadow:var(--shadow);overflow:hidden}
.frame-center{height:240px;background:#dce8c9;border-radius:34% 66% 58% 42%/59% 43% 57% 41%}
.frame-right{background:#f1d2dc;transform:rotate(5deg)}
.frame-left{transform:rotate(-4deg)}
.cloud-white{z-index:0;opacity:.95;transform:scale(.55)}
.cloud-left{left:-70px;top:118px}.cloud-right{right:-65px;bottom:10px}

.special{padding-top:36px}
.special-grid{display:grid;grid-template-columns:.9fr 1.25fr;gap:28px;align-items:stretch}
.special-card{background:var(--green);color:#fff;border-radius:28px;padding:54px 50px;min-height:390px;display:flex;flex-direction:column;justify-content:center;box-shadow:var(--shadow)}
.tiny-copy{font-size:13px;margin:0 0 34px}
.special-card h2{font-family:"Brush Script MT",cursive;font-size:72px;line-height:.72;margin:0 0 18px;font-weight:400}
.special-card h2 span{font-family:Georgia,serif;font-style:italic;font-size:45px}
.special-card>p:not(.tiny-copy){max-width:260px;line-height:1.6;font-size:14px}
.text-link{font-size:13px;font-weight:900;margin-top:14px}
.candle-stage{border-radius:28px;min-height:390px;background:linear-gradient(145deg,#f7eadf 0 55%,#ecd9d0 55%);position:relative;display:flex;align-items:flex-end;justify-content:center;gap:20px;padding:40px 32px 30px;overflow:hidden;box-shadow:var(--shadow)}
.candle-stage::before{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(0,0,0,.04))}

.shop{padding-bottom:116px}
.shop-title{text-align:center;font-size:50px;margin:0 0 8px;letter-spacing:-.05em}
.shop-title span{font-family:"Brush Script MT",cursive;font-weight:400;color:var(--pink);font-size:48px}
.shop-subtitle{text-align:center;font-size:13px;margin:0 0 42px;color:#6a665d}
.shop-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.shop-item{text-align:center}
.organic-window{aspect-ratio:1/1;background:#f1d4dc;border-radius:44% 56% 51% 49%/55% 38% 62% 45%;display:grid;place-items:center;overflow:hidden;box-shadow:var(--shadow);transition:transform .25s ease}
.shop-item:nth-child(2) .organic-window{background:#e8dfbd;border-radius:58% 42% 38% 62%/47% 64% 36% 53%}
.shop-item:nth-child(3) .organic-window{background:#cfe1d1;border-radius:37% 63% 61% 39%/65% 40% 60% 35%}
.shop-item:nth-child(4) .organic-window{background:#d4d8eb;border-radius:50% 50% 67% 33%/42% 55% 45% 58%}
.shop-item:hover .organic-window{transform:translateY(-7px) rotate(-1deg)}
.shop-item h3{font-size:15px;margin:16px 0 3px}
.shop-item p{font-size:12px;color:#7d786f;margin:0}

.masters{padding-top:108px;padding-bottom:130px;overflow:hidden}
.masters-heading{display:flex;align-items:center;justify-content:center;gap:22px;margin-bottom:42px}
.masters-heading h2{font-size:54px;margin:0;letter-spacing:-.06em;text-transform:lowercase}
.masters-heading h2 strong{font-family:"Brush Script MT",cursive;font-weight:400;font-size:64px}
.cloud-line{width:68px;height:22px;background:var(--white);border-radius:999px;position:relative;opacity:.95}
.cloud-line::before,.cloud-line::after{content:"";position:absolute;background:inherit;border-radius:50%;bottom:5px}
.cloud-line::before{width:24px;height:24px;left:12px}.cloud-line::after{width:32px;height:32px;right:10px}
.people-row{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.person{text-align:center}
.portrait{width:150px;height:150px;margin:0 auto 14px;border-radius:45% 55% 52% 48%/54% 39% 61% 46%;display:grid;place-items:center;border:6px solid var(--cream);box-shadow:0 10px 24px rgba(0,0,0,.12);position:relative;overflow:hidden}
.portrait::after{content:"";position:absolute;width:80px;height:100px;border-radius:50% 50% 35% 35%;background:rgba(255,255,255,.65);bottom:-40px}
.portrait span{position:relative;z-index:2;font-family:Georgia,serif;font-weight:900;color:#2b4f5b}
.portrait-1{background:linear-gradient(135deg,#e4a6bf,#f5d1c8)}
.portrait-2{background:linear-gradient(135deg,#f0c87b,#f7e1bc)}
.portrait-3{background:linear-gradient(135deg,#8ec2a2,#d2e7d0)}
.portrait-4{background:linear-gradient(135deg,#bba4de,#e5d1ef)}
.person h3{font-size:14px;margin:0 0 3px}.person p{font-size:11px;margin:0;color:rgba(255,255,255,.8)}

.interior{padding-top:128px;padding-bottom:110px;overflow:hidden}
.interior-grid{display:grid;justify-items:center}
.curved-copy{height:80px;width:min(760px,100%);position:relative;margin-bottom:-8px;font-size:29px;font-weight:900;text-transform:none}
.curved-copy .word{position:absolute;left:50%;top:36px;transform-origin:50% 180px;white-space:nowrap}
.w1{transform:translateX(-305px) rotate(-22deg)}.w2{transform:translateX(-214px) rotate(-13deg)}.w3{transform:translateX(-170px) rotate(-8deg)}.w4{transform:translateX(-58px) rotate(-2deg)}.w5{transform:translateX(8px) rotate(8deg)}.w6{transform:translateX(125px) rotate(19deg)}
.curved-copy .accent{font-family:"Brush Script MT",cursive;font-size:35px;font-weight:400;color:#e9a83c}
.room-scene{width:min(620px,90vw);aspect-ratio:1.35/1;border-radius:50% 50% 46% 54%/45% 58% 42% 55%;background:linear-gradient(180deg,#efc0ce 0 70%,#ead5ba 70%);position:relative;overflow:hidden;box-shadow:var(--shadow);border:7px solid #efdaaa}
.wall-art{position:absolute;background:#f8e9ca;border:8px solid #5e754a;box-shadow:0 3px 0 rgba(0,0,0,.08)}
.art-one{width:84px;height:104px;left:104px;top:62px}.art-two{width:118px;height:74px;right:110px;top:78px}
.shelf{position:absolute;height:8px;background:#697c52;border-radius:4px}.shelf-one{width:142px;left:58px;top:210px}.shelf-two{width:148px;right:62px;top:230px}
.console{position:absolute;width:230px;height:88px;left:190px;bottom:72px;background:#62a2ad;border-radius:6px 6px 12px 12px;border:7px solid #417c8b;box-shadow:inset 0 0 0 3px #86c2c8}
.chair{position:absolute;width:105px;height:138px;left:52px;bottom:36px;background:#f9e7bf;border-radius:48% 48% 22% 22%;border:7px solid #d07172;transform:rotate(-4deg)}
.floor-vase{position:absolute;width:56px;height:88px;right:62px;bottom:50px;background:#e18f73;border-radius:44% 44% 35% 35%}
.interior-copy{max-width:440px;text-align:center;font-size:13px;line-height:1.6;margin:26px 0 16px;color:#625d55}

.handmade{padding:54px 0 58px}
.handmade-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
.handmade-photo{height:270px;border-radius:30px;background:#d8a56f;position:relative;overflow:hidden;box-shadow:var(--shadow)}
.shelf-scene{display:flex;justify-content:center;align-items:flex-end;gap:18px;padding:40px 34px 24px}
.mini-shelf{position:absolute;height:14px;background:#9b694e;border-radius:6px;left:50%;transform:translateX(-50%)}
.ms1{width:80%;bottom:78px}.ms2{width:65%;bottom:155px}
.handmade-copy h2{font-size:52px;line-height:.85;margin:0 0 30px;letter-spacing:-.06em;color:#fff}
.handmade-copy h2 span{font-family:"Brush Script MT",cursive;font-weight:400;font-size:58px}
.small-art-row{display:flex;gap:12px}.mini-art{width:92px;height:92px;border-radius:42% 58% 56% 44%/51% 42% 58% 49%;background:var(--cream);display:grid;place-items:center}

.decorate{padding-top:88px;padding-bottom:118px;text-align:center;overflow:hidden}
.decorate h2{font-size:30px;line-height:1.3;margin:0 0 44px;letter-spacing:-.04em}
.decorate h2 em{font-family:"Brush Script MT",cursive;color:var(--pink);font-size:40px;font-weight:400}
.decorate h2 span{color:var(--blue-deep)}
.cloud-word{width:min(500px,90%);height:160px;margin:0 auto 30px;display:grid;place-items:center;font-size:84px;font-weight:900;letter-spacing:-.08em;color:rgba(255,255,255,.93);-webkit-text-stroke:6px #c2abd5;paint-order:stroke fill;background:radial-gradient(circle at 7% 52%,#c2abd5 0 13%,transparent 14%),radial-gradient(circle at 93% 56%,#c2abd5 0 14%,transparent 15%);text-shadow:0 8px 20px rgba(0,0,0,.08)}
.choose{font-size:31px;line-height:1.1;font-weight:900;letter-spacing:-.05em;margin:0}
.choose em{font-family:"Brush Script MT",cursive;font-size:37px;color:#eab23f;font-weight:400}.choose span{font-family:Georgia,serif;font-style:italic;font-size:24px;font-weight:400}
.decorative-candles{margin:38px auto 0;display:flex;align-items:flex-end;justify-content:center;gap:18px;min-height:150px}

.footer{padding:78px 0 28px;min-height:340px}
.footer-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px}
.footer-brand{font-size:54px;color:#fff}.footer-brand span{font-family:"Brush Script MT",cursive;font-weight:400;margin-left:2px}
.footer-links{display:grid;gap:8px;margin-top:24px;width:max-content}.footer-links a{font-size:13px;opacity:.9}
.sticker-field{height:170px;position:relative}
.sticker{position:absolute;display:grid;place-items:center;width:86px;height:64px;color:#fff;font-weight:900;font-size:13px;border-radius:22px;box-shadow:0 8px 18px rgba(0,0,0,.08)}
.s1{background:#ee6f84;left:20px;top:50px;transform:rotate(-12deg)}.s2{background:#87bf55;left:110px;top:8px;transform:rotate(8deg)}.s3{background:#f0bd4a;right:40px;top:66px;transform:rotate(13deg)}.s4{background:#b698d9;right:124px;top:20px;transform:rotate(-8deg)}
.footnote{font-size:11px;color:rgba(255,255,255,.68);padding-top:34px}

/* Candle sculpture library */
.candle{--c:#ef8ba8;display:inline-block;position:relative;filter:drop-shadow(0 10px 10px rgba(0,0,0,.12));flex:0 0 auto}
.candle::after{content:"";position:absolute;width:2px;height:9px;background:#3a2b23;left:50%;top:-7px;border-radius:3px}
.candle.pink{--c:#ef8ba8}.candle.peach{--c:#f2a57a}.candle.lilac{--c:#b794d6}.candle.green{--c:#92bb77}.candle.yellow{--c:#eabc55}
.pillar{width:54px;height:118px;background:linear-gradient(90deg,color-mix(in srgb,var(--c),#fff 20%),var(--c),color-mix(in srgb,var(--c),#000 8%));border-radius:10px 10px 16px 16px}
.ribbed{width:54px;height:110px;border-radius:15px;background:repeating-linear-gradient(90deg,color-mix(in srgb,var(--c),#fff 12%) 0 7px,var(--c) 7px 14px)}
.ribbed.tall{height:146px}.wavy{width:58px;height:128px;border-radius:28px;background:linear-gradient(90deg,color-mix(in srgb,var(--c),#fff 18%),var(--c));clip-path:polygon(17% 0,79% 0,97% 12%,78% 24%,96% 37%,75% 50%,96% 63%,77% 76%,95% 88%,80% 100%,17% 100%,2% 88%,22% 75%,3% 62%,22% 49%,3% 36%,21% 23%,2% 11%)}
.arch{width:92px;height:102px;border:28px solid var(--c);border-bottom-width:24px;border-radius:50px 50px 30px 30px}
.arch::after{top:-34px}
.loop{width:98px;height:90px;border:20px solid var(--c);border-radius:50%;transform:rotate(-18deg)}
.loop::after{top:-24px}
.arc{width:80px;height:112px;background:var(--c);border-radius:46px 46px 18px 18px;clip-path:polygon(0 0,100% 0,100% 100%,58% 100%,58% 44%,42% 44%,42% 100%,0 100%)}
.arc::after{top:-7px}
.bubble{width:88px;height:100px;background:radial-gradient(circle at 25% 18%,var(--c) 0 22%,transparent 23%),radial-gradient(circle at 75% 18%,var(--c) 0 22%,transparent 23%),radial-gradient(circle at 25% 50%,var(--c) 0 22%,transparent 23%),radial-gradient(circle at 75% 50%,var(--c) 0 22%,transparent 23%),radial-gradient(circle at 25% 82%,var(--c) 0 22%,transparent 23%),radial-gradient(circle at 75% 82%,var(--c) 0 22%,transparent 23%)}
.bubble::after{top:-4px}
.spiral{width:82px;height:110px;border-radius:25px;background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--c),#fff 17%) 0 10px,var(--c) 10px 20px);transform:skew(-7deg)}
.stack{width:80px;height:96px;border-radius:18px;background:linear-gradient(var(--c) 0 0) 0 0/100% 28% no-repeat,linear-gradient(color-mix(in srgb,var(--c),#fff 14%) 0 0) 0 35%/100% 28% no-repeat,linear-gradient(color-mix(in srgb,var(--c),#000 4%) 0 0) 0 70%/100% 30% no-repeat}
.knot{width:92px;height:88px;border:18px solid var(--c);border-radius:45% 55% 50% 50%;box-shadow:inset 0 0 0 8px color-mix(in srgb,var(--c),#fff 18%)}
.sticks{width:140px;height:110px;background:repeating-linear-gradient(90deg,#ebbd53 0 14px,#f09b79 14px 28px,#d9a0cc 28px 42px,#8fbd83 42px 56px);clip-path:polygon(8% 0,19% 8%,28% 0,38% 9%,48% 0,58% 10%,68% 0,78% 8%,88% 0,100% 10%,94% 100%,84% 91%,74% 100%,64% 91%,54% 100%,43% 90%,33% 100%,22% 91%,11% 100%,0 90%)}
.tiny{transform:scale(.38);position:absolute}.one{left:215px;bottom:84px}.two{left:286px;bottom:76px}.three{left:355px;bottom:85px}

.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.2,.8,.2,1),transform .7s cubic-bezier(.2,.8,.2,1)}
.reveal.in{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.pill,.organic-window{transition:none}}

@media (max-width:900px){
  .wrap{width:min(100% - 36px,720px)}
  .nav-links{display:none}.menu-toggle{display:block;order:2}.cta{order:3}.brand-small{order:1}
  .nav.open .nav-links{display:flex;position:absolute;top:66px;left:18px;right:18px;background:var(--blue-deep);padding:18px;border-radius:20px;flex-direction:column;box-shadow:var(--shadow)}
  .hero{min-height:760px}.hero-inner{grid-template-columns:1fr;gap:20px;padding-top:40px}.hero-copy{text-align:center;margin:auto}.script-kicker{margin-left:0}.hero h1{font-size:76px}.hero-art{height:300px;max-width:520px;width:100%;margin:auto}.blob-a{left:8%}.blob-b{right:7%;top:70px}.blob-c{left:42%;bottom:-10px}
  .week-title{font-size:54px}.week-collage{grid-template-columns:repeat(3,1fr)}
  .special-grid,.handmade-grid,.footer-grid{grid-template-columns:1fr}.special-card{min-height:320px}.handmade-copy{text-align:center}.small-art-row{justify-content:center}
  .shop-grid,.people-row{grid-template-columns:repeat(2,1fr)}
  .curved-copy{font-size:22px;transform:scale(.8);margin-bottom:-4px}
  .footer-grid{gap:30px}.sticker-field{max-width:440px}.footer{min-height:400px}
}

@media (max-width:560px){
  .section{padding:68px 0}.nav{height:68px}.cta{display:none}
  .hero{min-height:720px}.hero h1{font-size:58px}.hero-copy>p:not(.script-kicker){font-size:14px}.hero-art{height:280px}.blob-a{width:140px;height:120px;top:46px}.blob-b{width:130px;height:145px;right:2%;top:120px}.blob-c{width:116px;height:104px;left:37%;bottom:-3px}
  .week{padding-top:92px}.week-title{font-size:44px}.week-title em{font-size:46px}.week-collage{gap:10px}.mini-frame{height:140px}.frame-center{height:162px}.candle-stage{min-height:300px;gap:10px;padding-inline:16px}.special-card{padding:40px 30px}.special-card h2{font-size:58px}
  .shop-grid,.people-row{grid-template-columns:1fr 1fr;gap:18px}.masters-heading h2{font-size:40px}.masters-heading h2 strong{font-size:48px}.portrait{width:120px;height:120px}
  .curved-copy{display:none}.room-scene{width:100%}.interior-copy{max-width:320px}
  .handmade-photo{height:220px}.handmade-copy h2{font-size:42px}.handmade-copy h2 span{font-size:48px}
  .decorate h2{font-size:23px}.cloud-word{height:120px;font-size:60px}.choose{font-size:24px}.choose em{font-size:31px}
  .decorative-candles{transform:scale(.8);margin-inline:-35px}
  .footer-brand{font-size:46px}.sticker-field{height:150px}.s3{right:0}.s4{right:84px}
}
