/* Seasonal collection: original photographs are displayed uncropped. */
.campaign-2010-notice{display:flex;justify-content:center;gap:14px;align-items:center;flex-wrap:wrap;padding:12px 20px;background:#eed8d3;color:#642e29;font:700 14px/1.5 var(--sans);text-align:center}
.campaign-2010-notice a{color:inherit;text-underline-offset:4px;white-space:nowrap}
.campaign-2010{padding:72px var(--gutter);background:#fbefea;color:var(--ink);scroll-margin-top:95px}
.campaign-2010 *{box-sizing:border-box}
.campaign-2010__intro{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,76px);align-items:center}
.campaign-2010__eyebrow{font:800 12px/1.6 var(--sans);letter-spacing:.12em;color:#89534a;margin:0 0 18px}
.campaign-2010 h2,.campaign-2010 h1{font:600 clamp(36px,4.5vw,62px)/1.3 var(--display);letter-spacing:0;margin:0 0 24px;color:#662f29;text-wrap:balance}
.campaign-2010__copy>p:not(.campaign-2010__eyebrow):not(.campaign-2010__note){font:600 16px/1.8 var(--sans);color:#70554b;max-width:54ch}
.campaign-2010__copy>.campaign-2010__lead{font-size:19px!important;color:#492c25!important}
.campaign-2010__actions{display:flex;flex-wrap:wrap;gap:12px;margin:26px 0 16px}
.campaign-2010 .home-button{min-height:46px;gap:9px}
.campaign-2010 .home-button img{width:24px;height:24px;object-fit:contain}
.campaign-2010__note{font:600 13px/1.7 var(--sans);color:#7a6056;margin:16px 0 0}
.campaign-2010__cover,.campaign-2010__photo{display:block;position:relative;overflow:hidden;border-radius:14px;background:#fff9f5}
.campaign-2010__cover{max-width:500px;justify-self:end;box-shadow:0 18px 50px #743b2915}
.campaign-2010__cover img{display:block;width:100%;height:auto}
.campaign-2010__zoom{position:absolute;right:13px;bottom:13px;display:grid;place-items:center;width:34px;height:34px;background:#fff8f1eb;color:#6e2c1d;border-radius:50%;font:22px/1 var(--sans);box-shadow:0 2px 10px #0001}
.campaign-2010__collection{padding-top:70px;scroll-margin-top:100px}
.campaign-2010__heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:24px}
.campaign-2010 .campaign-2010__subheading{font:600 clamp(28px,3vw,38px)/1.35 var(--display);letter-spacing:0;color:#662f29;margin:0}
.campaign-2010__heading .campaign-2010__eyebrow{margin-bottom:10px}
.campaign-2010__heading>p{font:600 14px/1.7 var(--sans);color:#70554b;max-width:32ch;margin:0}
.campaign-2010__products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.campaign-2010__product{background:#fffaf6;border:1px solid #e6ccc3;border-radius:14px;overflow:hidden;display:flex;flex-direction:column}
.campaign-2010__photo{border-radius:0;aspect-ratio:1/1.05;display:grid;place-items:center}
.campaign-2010__photo img{display:block;width:100%;height:100%;object-fit:contain}
.campaign-2010__product-copy{padding:23px;display:flex;flex-direction:column;flex:1}
.campaign-2010__product-head{display:flex;flex-direction:column;gap:8px}
.campaign-2010 .campaign-2010__product-title{font:800 19px/1.5 var(--sans);margin:0;color:#492c25}
.campaign-2010 .campaign-2010__price{font:800 22px/1.3 var(--sans);color:var(--red);margin:0}
.campaign-2010__product-copy>p{font:600 14px/1.8 var(--sans);color:#70554b;margin:15px 0 22px}
.campaign-2010__order{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid #ead7cf;padding-top:15px;margin-top:auto;color:#6e2c1d;font:800 14px/1.5 var(--sans);text-decoration:none;min-height:44px}
.campaign-2010__order:hover{text-decoration:underline;text-underline-offset:4px}
.campaign-2010__flavours{display:grid;grid-template-columns:minmax(220px,340px) 1fr;gap:clamp(28px,6vw,85px);align-items:center;border-top:1px solid #e1c7bd;padding-top:44px;margin-top:44px}
.campaign-2010__flavours>a{display:block;border-radius:12px;overflow:hidden}
.campaign-2010__flavours>a>img{display:block;width:100%;height:auto}
.campaign-2010__flavours ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 25px;list-style:none;padding:0;margin:24px 0;font:700 15px/1.6 var(--sans);color:#6e2c1d}
.campaign-2010__flavours li{border-bottom:1px solid #e1c7bd;padding-bottom:9px}
.campaign-2010__flavours>div>p:not(.campaign-2010__eyebrow){font:600 15px/1.8 var(--sans);color:#70554b;max-width:55ch}
.campaign-2010 a:focus-visible,.campaign-2010-notice a:focus-visible{outline:3px solid #9b493e;outline-offset:5px}
@media(min-width:1600px){.campaign-2010__cover{max-width:530px}}
@media(max-width:760px){.campaign-2010{padding-top:40px;padding-bottom:42px}.campaign-2010__intro{grid-template-columns:1fr;gap:24px}.campaign-2010__cover{max-width:480px;justify-self:center;width:100%}.campaign-2010 h2,.campaign-2010 h1{font-size:38px;max-width:18ch}.campaign-2010__copy>.campaign-2010__lead{font-size:17px!important}.campaign-2010__collection{padding-top:42px}.campaign-2010__heading{display:block}.campaign-2010__heading>p{max-width:none;margin-top:14px}.campaign-2010__products{grid-template-columns:1fr;gap:22px}.campaign-2010__photo{aspect-ratio:auto}.campaign-2010__photo img{height:auto}.campaign-2010__product-copy{padding:20px}.campaign-2010__product-head{flex-direction:row;justify-content:space-between;align-items:start;gap:14px}.campaign-2010 .campaign-2010__product-title{font-size:18px}.campaign-2010 .campaign-2010__price{font-size:19px;white-space:nowrap}.campaign-2010__flavours{grid-template-columns:1fr;gap:25px;margin-top:30px;padding-top:30px}.campaign-2010__flavours>a{max-width:400px;justify-self:center;width:100%}.campaign-2010-notice{font-size:12px;gap:4px 12px}.campaign-2010__flavours ul{font-size:14px}}
@media(prefers-reduced-motion:no-preference){.campaign-2010__photo img{transition:filter .2s}.campaign-2010__photo:hover img{filter:brightness(1.035)}}
@media(max-width:760px){.campaign-2010__intro{gap:18px}.campaign-2010__copy{display:contents}.campaign-2010__copy>.campaign-2010__eyebrow{grid-row:1;margin:0}.campaign-2010__copy>h2,.campaign-2010__copy>h1{grid-row:2;margin:0}.campaign-2010__cover{grid-row:3;margin:6px 0}.campaign-2010__copy>p{margin:0}.campaign-2010__copy>.campaign-2010__actions{margin:6px 0}}

.campaign-2010__more{display:inline-flex;gap:12px;align-items:center;color:var(--brown);font:800 14px/1.6 var(--sans);margin-top:18px;text-underline-offset:5px}
.campaign-page .campaign-2010{padding-top:26px}.campaign-page .campaign-2010__cover{max-width:550px}
.campaign-page__breadcrumb{padding:25px var(--gutter) 0;font-size:13px;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.campaign-page__breadcrumb ol{list-style:none;padding:0;margin:0;display:flex;gap:12px;align-items:center}.campaign-page__breadcrumb li+li:before{content:'/';margin-right:12px;color:var(--muted)}
.campaign-page__copy{border:1px solid var(--line);border-radius:999px;padding:8px 14px;background:var(--paper);color:var(--brown);font-weight:700;cursor:pointer}.campaign-page__copy:hover{background:var(--cream)}.campaign-page__copy:focus-visible{outline:2px solid var(--brown);outline-offset:3px}.campaign-page__share-status{font-size:12px;color:var(--muted)}
.campaign-page__archive{padding:16px var(--gutter);background:#eed8d3;color:var(--brown)}
.campaign-page__order,.campaign-page__faq{padding:58px var(--gutter);background:var(--paper)}.campaign-page__order h2,.campaign-page__faq h2{font:600 clamp(30px,3.3vw,44px)/1.35 var(--display);color:var(--brown);margin:0 0 28px}
.campaign-page__steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;list-style:none;padding:0;margin:0}.campaign-page__steps li{border-top:1px solid var(--line);padding-top:20px}.campaign-page__steps strong{display:block;color:var(--brown);font-size:18px;margin-bottom:12px}.campaign-page__steps p{color:#70554b;font-weight:600;font-size:15px;line-height:1.8}
.campaign-page__faq{padding-top:0}.campaign-page__faq details{border-top:1px solid var(--line);padding:20px 0}.campaign-page__faq summary{font-weight:800;color:var(--brown);cursor:pointer;min-height:30px}.campaign-page__faq details p{padding-top:15px;max-width:80ch;color:#70554b;font-weight:600;line-height:1.8}
.campaign-page__order .home-actions{margin-top:30px}.campaign-page__order .home-button{gap:9px}.campaign-page__order .home-button img{width:24px;height:24px}
@media(max-width:760px){.campaign-page__steps{grid-template-columns:1fr}.campaign-page__order,.campaign-page__faq{padding:38px var(--gutter)}.campaign-page__faq{padding-top:0}.campaign-2010__copy>.campaign-2010__more{margin:0}.campaign-page__breadcrumb{padding-top:20px}.campaign-page .campaign-2010{padding-top:24px}}

.campaign-page .campaign-2010{padding-top:56px;background:#fcf5ef}
.campaign-page .campaign-2010__copy>.campaign-2010__eyebrow{font-size:10px;font-weight:700;letter-spacing:.17em;color:#795c4e;margin-bottom:22px}
.campaign-page .campaign-2010 h1.campaign-2010__occasion{display:flex;flex-direction:column;gap:20px;max-width:17ch;font:600 clamp(40px,4.3vw,58px)/1.36 var(--display);color:#6d382b;letter-spacing:0;margin:0 0 22px;text-wrap:balance}
.campaign-2010__occasion-date{display:flex;align-items:center;gap:16px;font:700 19px/1.4 var(--sans);letter-spacing:.08em;color:#95684e}
.campaign-2010__occasion-date:after{content:'';display:block;width:48px;height:1px;background:#d7b9a4}
.campaign-page .campaign-2010__copy>p.campaign-2010__occasion-message{font:600 17px/1.8 var(--sans);color:#805e4f;margin:0 0 18px}
@media(min-width:761px){.campaign-page .campaign-2010__intro{grid-template-columns:.95fr 1.05fr;gap:clamp(32px,5vw,76px)}.campaign-page .campaign-2010__cover{border-radius:18px;box-shadow:0 16px 44px #6e2c1d0b}}
@media(max-width:760px){.campaign-page .campaign-2010{padding-top:32px}.campaign-page .campaign-2010__intro{gap:18px}.campaign-page .campaign-2010__copy>.campaign-2010__eyebrow{margin:0;font-size:9px}.campaign-page .campaign-2010 h1.campaign-2010__occasion{font-size:37px;gap:14px;max-width:16ch;margin:0}.campaign-2010__occasion-date{font-size:17px;gap:12px}.campaign-2010__occasion-date:after{width:38px}.campaign-page .campaign-2010__copy>p.campaign-2010__occasion-message{margin:0;font-size:16px}.campaign-page .campaign-2010__cover{margin:4px 0 0;border-radius:14px}}

/* Keep the occasion name legible in the narrow display typeface. */
.campaign-page .campaign-2010__occasion>span:last-child{white-space:pre-line;word-spacing:normal;letter-spacing:0}

/* Frame different original aspect ratios without cropping product details. */
.campaign-2010__photo{aspect-ratio:1;isolation:isolate;background:#f1e6de}
.campaign-2010__photo:before{content:'';position:absolute;inset:-24px;z-index:-1;background-image:var(--campaign-photo);background-position:center;background-size:cover;filter:blur(22px);opacity:.24;pointer-events:none}
.campaign-2010__photo img{position:absolute;inset:0;margin:auto;width:auto;height:auto;max-width:calc(100% - 24px);max-height:calc(100% - 24px);min-width:0;min-height:0;object-fit:contain;border-radius:6px;box-shadow:0 4px 18px #563b2620}
.campaign-2010__photo .campaign-2010__zoom{right:18px;bottom:18px;z-index:2;width:32px;height:32px;background:#fffaf4f2;box-shadow:0 2px 8px #563b2614}
@media(max-width:760px){.campaign-2010__photo{aspect-ratio:auto;display:block;padding:12px}.campaign-2010__photo img{position:relative;inset:auto;width:100%;height:auto;max-width:100%;max-height:none;box-shadow:0 3px 12px #563b2614}}

/* Keep the landing intro and its complete photograph within a desktop view. */
@media(min-width:1024px){
 .campaign-page .campaign-2010{padding-top:clamp(20px,3svh,34px)}
 .campaign-page .campaign-2010__intro{gap:clamp(30px,4vw,64px)}
 .campaign-page .campaign-2010__cover{width:100%;max-width:min(500px,calc((100svh - var(--header) - 56px)*.8));justify-self:end}
 .campaign-page .campaign-2010__copy>.campaign-2010__eyebrow{margin:0 0 12px}
 .campaign-page .campaign-2010 h1.campaign-2010__occasion{font-size:clamp(34px,5.6svh,46px);line-height:1.28;gap:12px;margin:0 0 14px}
 .campaign-page .campaign-2010__occasion-date{font-size:16px}
 .campaign-page .campaign-2010__copy>p.campaign-2010__occasion-message{font-size:15px;line-height:1.7;margin:0 0 12px}
 .campaign-page .campaign-2010__copy>p.campaign-2010__lead{font-size:16px!important;line-height:1.65;margin:0 0 10px}
 .campaign-page .campaign-2010__copy>p:not(.campaign-2010__eyebrow):not(.campaign-2010__note):not(.campaign-2010__occasion-message):not(.campaign-2010__lead){font-size:14px;line-height:1.75;margin:0 0 12px;max-width:55ch}
 .campaign-page .campaign-2010__actions{margin:16px 0 10px}
 .campaign-page .campaign-2010__copy>.campaign-2010__note{font-size:12px;line-height:1.7;margin:8px 0 0}
}

/* The campaign announcement overlays the hero and takes no layout space. */
.home-hero>.campaign-2010-notice{position:absolute;top:12px;left:50%;right:auto;z-index:4;transform:translateX(-50%);width:max-content;max-width:calc(100% - 32px);padding:9px 18px;gap:6px 16px;border:1px solid #ead5c6;border-radius:999px;background:#fff9f1f2;color:var(--brown);box-shadow:0 4px 18px #2a170f18;font-size:13px;line-height:1.6}
@media(max-width:600px){.home-hero>.campaign-2010-notice{top:10px;left:16px;right:16px;transform:none;width:auto;max-width:none;padding:9px 13px;border-radius:12px;gap:3px 12px;font-size:12px}}
@media(max-height:540px) and (orientation:landscape){.home-hero>.campaign-2010-notice{position:fixed;top:auto;bottom:12px;left:auto;right:16px;transform:none;width:max-content;max-width:310px;border-radius:12px;z-index:75}}
.home-page.lightbox-open .campaign-2010-notice,.home-page.nav-open .campaign-2010-notice{visibility:hidden}

/* Keep the attention bar over the hero without adding a row to the page flow. */
.home-hero>.campaign-2010-notice{top:0;left:0;right:0;z-index:4;transform:none;width:100%;max-width:none;padding:11px 20px;border:0;border-radius:0;background:#eed8d3f2;color:#642e29;box-shadow:0 3px 14px #2a170f16;font-size:14px;line-height:1.5}
@media(max-width:600px){.home-hero>.campaign-2010-notice{top:0;left:0;right:0;padding:10px 12px;border-radius:0;gap:4px 12px;font-size:12px}}
.home-hero>.campaign-2010-notice.is-pinned{position:fixed;top:var(--header);left:0;right:0;width:100%;max-width:none;transform:none;z-index:79}
