:root{--paper:#fff8ef;--ink:#3a2442;--accent:#b94323;--on-accent:#fff;--muted:#6c5b66;--line:#d7c8d1;--soft:#e9ddf1;--image-bg:#f1e8de;--heading-font:'Outfit',sans-serif;--body-font:'DM Sans',sans-serif;--heading-weight:600}.utility{background:#dfdd81;color:#3a2442}.brand-mark{font-size:35px;font-weight:700;letter-spacing:-.06em}.header-row{padding-block:24px}.site-search{border-radius:50px;background:#fffdf8}.main-nav{border-bottom:0;padding-bottom:22px;font-weight:500}.primary{border-radius:50px}.party-opening{display:grid;grid-template-columns:1fr 1fr;background:#e9ddf1}.party-copy{padding:65px max(36px,calc((100vw - 1280px)/2));padding-right:55px}.party-copy h1{font-size:clamp(45px,4.7vw,74px);letter-spacing:-.06em;line-height:1.02;max-width:610px}.party-copy>p{font-size:16px;line-height:1.8;margin:28px 0;max-width:420px}.party-picture{position:relative;min-height:560px}.party-picture>img{width:100%;height:100%;object-fit:cover}.picture-stamp{position:absolute;bottom:30px;right:30px;width:100px;height:100px;border-radius:50%;background:#dfdd81;display:grid;place-content:center;text-align:center;font-weight:700;font-size:18px;line-height:1.1;transform:rotate(10deg)}.party-notes{display:flex;gap:22px;font-size:11px;margin-top:40px}.party-notes span:before{content:'✓';margin-right:7px}.party-ribbon{display:flex;gap:45px;justify-content:center;align-items:center;background:#b94323;color:#fff8ef;padding:15px;font-size:17px}.party-ribbon b{font-size:25px;font-weight:400}.party-aisles,.party-favourites{margin-top:65px}.section-title h2{font-size:38px;letter-spacing:-.04em}.department-cards{grid-template-columns:repeat(3,1fr)}.department-cards img{border-radius:50% 50% 12px 12px;aspect-ratio:4/3;padding:20px}.department-cards span{justify-content:center;font-size:20px;font-weight:500}.department-cards .icon{display:none}.party-grid{gap:30px}.party-grid .card-media{border-radius:18px;overflow:hidden}.party-grid .card-media img{padding:12px}.card-copy h3{font-size:18px;font-weight:500}.card-extra{font-size:11px;color:var(--muted);margin-top:7px}.party-table{display:grid;grid-template-columns:1fr 1fr;background:#f4d5c5;align-items:center;margin-block:70px;border-radius:24px;overflow:hidden}.party-table>a{padding:35px}.party-table>a img{width:100%;border-radius:50%}.party-table>div{padding:40px 50px}.party-table h2{font-size:48px;letter-spacing:-.045em}.party-table p{font-size:15px;line-height:1.8;margin:25px 0}.party-shop-heading{padding-bottom:40px}.party-shop-heading h1{font-size:60px;letter-spacing:-.055em;max-width:780px}.party-shop-heading p{margin-top:22px}.party-category-row{display:flex;gap:14px;margin-bottom:26px;flex-wrap:wrap}.party-category-row a{padding:11px 22px;border-radius:30px;background:#e9ddf1;font-size:13px}.party-category-row a:first-child{background:var(--ink);color:var(--paper)}.party-shop .filters{border:0;background:#f0eadf;padding:20px;border-radius:18px}.party-shop .filters input,.party-shop .filters select{border-radius:8px}.party-shop .party-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.party-product{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;margin-top:10px}.party-product-image{position:relative}.party-product .product-photo{border-radius:30px;overflow:hidden}.party-product .product-photo img{padding:18px}.party-pill{position:absolute;left:23px;top:23px;background:#dfdd81;padding:8px 18px;border-radius:40px;font-size:12px}.party-product-info{padding-top:30px}.party-product .buy-panel h1{font-size:49px;letter-spacing:-.05em}.party-product .buy-panel select{border-radius:9px}.party-product .quantity-control{border-radius:30px}.pack-note{display:flex;justify-content:space-between;background:#e9ddf1;padding:18px 22px;border-radius:12px;margin-top:28px;font-size:14px}.party-fit{font-size:12px;margin-top:18px;line-height:1.8}.party-details-row{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;padding:55px 0;border-bottom:1px solid var(--line)}.party-details-row h2{font-size:32px;margin-bottom:24px;letter-spacing:-.03em}.party-details-row p{font-size:14px;line-height:1.9}.footer{--footer-bg:#e9ddf1;--footer-ink:#3a2442}.footer-name{font-weight:600}.related .product-card .card-media{border-radius:15px;overflow:hidden}
@media(max-width:1050px){.party-copy{padding:40px 30px}.party-copy h1{font-size:52px}.party-picture{min-height:490px}.party-ribbon{gap:25px}.party-table>div{padding:30px}.party-table h2{font-size:39px}.party-product{gap:35px}.party-shop .party-grid{grid-template-columns:repeat(3,1fr)}.party-product .buy-panel h1{font-size:40px}}
@media(max-width:700px){.brand-mark{font-size:30px}.party-opening{display:block}.party-copy{padding:36px 24px}.party-copy h1{font-size:49px;max-width:340px}.party-copy>p{font-size:14px;margin:22px 0}.party-notes{margin-top:27px;font-size:10px}.party-picture{min-height:0;height:330px}.picture-stamp{width:80px;height:80px;font-size:15px;bottom:20px;right:20px}.party-ribbon{gap:18px;font-size:12px;white-space:nowrap;overflow:hidden;justify-content:flex-start}.party-ribbon b{font-size:18px}.party-ribbon span{flex-shrink:0}.party-aisles,.party-favourites{margin-top:40px}.department-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.department-cards img{padding:6px;aspect-ratio:1}.department-cards span{font-size:13px;text-align:center}.section-title h2{font-size:30px}.party-grid,.party-shop .party-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 14px}.party-table{display:flex;flex-direction:column;margin-block:42px;border-radius:18px}.party-table>a{padding:25px 25px 0}.party-table>div{padding:27px}.party-table h2{font-size:38px}.party-shop-heading h1{font-size:44px}.party-category-row{gap:8px}.party-category-row a{padding:9px 13px;font-size:11px}.party-shop .filters{padding:16px}.party-product{display:block;margin-top:0}.party-product-info{padding-top:30px}.party-product .buy-panel h1{font-size:38px}.party-details-row{display:block;padding:35px 0}.party-details-row>section+section{margin-top:32px}.party-details-row h2{font-size:28px}.party-grid .card-media img{padding:5px}.card-extra{font-size:10px}}

/* LOCAL FONT FACES */
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/outfit-0.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/outfit-1.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/outfit-2.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonts/outfit-3.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Outfit';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/assets/fonts/outfit-4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/dmsans-0.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/dmsans-1.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/dmsans-2.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonts/dmsans-3.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/assets/fonts/dmsans-4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
