
body.cannon-storefront{margin:0;background:#fff;color:#242128;font-family:Lato,Arial,sans-serif;font-size:14px}
.cannon-storefront *{box-sizing:border-box}.cannon-storefront a{color:inherit;text-decoration:none}.cannon-storefront svg{width:24px;height:24px;flex-shrink:0}
.cannon-topbar{height:32px;background:#000;color:#fff;position:relative;overflow:hidden;font-size:12px;letter-spacing:.5px}
.cannon-announcement{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:12px;animation:cannon-notice 10s infinite;opacity:0}
.cannon-announcement:nth-child(2){animation-delay:5s}.cannon-announcement svg{width:21px;height:21px}
@keyframes cannon-notice{0%,4%{opacity:0;transform:translateY(8px)}8%,43%{opacity:1;transform:translateY(0)}48%,100%{opacity:0;transform:translateY(-8px)}}
.cannon-mainnav{max-width:1480px;margin:auto;padding:28px 42px;display:grid;grid-template-columns:1fr 227px 1fr;align-items:center;gap:40px;min-height:113px}
.cannon-search{display:flex;align-items:center;background:#f5f5f5;border:1px solid #ddd;border-radius:7px;padding:9px 12px;gap:8px;width:100%;max-width:360px}
.cannon-search button{display:flex;padding:0;border:0;background:none;color:#555;cursor:pointer}.cannon-search input[type=search]{min-width:0;width:100%;border:0;background:none;font:12px Lato,Arial,sans-serif;padding:0;outline-offset:4px;box-shadow:none}
.cannon-search-placeholder{display:flex;gap:10px;color:#777}.cannon-search-placeholder svg{width:19px;height:19px}
.cannon-logo img{display:block;width:227px;height:auto}.cannon-actions{display:flex;justify-content:flex-end;gap:24px}.cannon-actions a{display:flex;flex-direction:column;align-items:center;gap:7px;white-space:nowrap;font-size:11px}.cannon-actions svg{height:25px;width:25px}
.cannon-categories{display:flex;justify-content:center;align-items:center;gap:36px;padding:17px 24px 19px;border-top:1px solid #f4f4f4;border-bottom:1px solid #eee;font-size:12px;font-weight:700;letter-spacing:.3px}.cannon-categories a{white-space:nowrap}.cannon-categories .cannon-new{color:#a01a1a}
.cannon-home{margin:0!important;padding:0!important;max-width:none!important;width:100%}.cannon-hero{position:relative}.cannon-hero img{display:block;width:100%;height:auto}.cannon-dots{position:absolute;bottom:16px;left:0;right:0;display:flex;justify-content:center;gap:9px}.cannon-dots i{display:block;width:9px;height:9px;border:1px solid #fff;border-radius:50%;background:#ffffff70}.cannon-dots .active{background:#fff}
.cannon-collection{padding:42px 24px 56px;max-width:1480px;margin:auto}.cannon-collection h1{font-family:Georgia,'Times New Roman',serif;font-size:32px;font-weight:400;letter-spacing:2px;text-align:center;margin:0 0 32px}.cannon-collection .woocommerce{padding:0}.cannon-storefront .woocommerce ul.products li.product{border:0;padding:0 12px;box-shadow:none}.cannon-storefront .woocommerce ul.products{gap:30px}.cannon-storefront .woocommerce ul.products li.product a img{margin-bottom:14px}.cannon-footer{border-top:1px solid #eee;padding:28px;text-align:center;font-size:13px;letter-spacing:4px}
@media(max-width:1050px){.cannon-mainnav{gap:20px;padding:24px;grid-template-columns:1fr 180px 1fr}.cannon-logo img{width:180px}.cannon-actions{gap:13px}.cannon-search-placeholder{display:none}.cannon-categories{gap:20px;font-size:10px}}
@media(max-width:700px){.cannon-mainnav{grid-template-columns:1fr 1fr;padding:18px 16px;gap:20px}.cannon-logo{grid-row:1;grid-column:1}.cannon-logo img{width:160px}.cannon-search{grid-row:2;grid-column:1/-1;max-width:none}.cannon-actions{grid-row:1;grid-column:2;gap:13px}.cannon-actions a{font-size:9px}.cannon-actions a:nth-child(2),.cannon-actions a:nth-child(3){display:none}.cannon-categories{justify-content:flex-start;overflow-x:auto;padding:14px 16px;gap:24px;font-size:11px}.cannon-collection{padding:28px 12px}.cannon-collection h1{font-size:25px}.cannon-storefront .woocommerce ul.products{gap:24px 12px}}
@media(prefers-reduced-motion:reduce){.cannon-announcement{animation:none;opacity:1}.cannon-announcement:nth-child(2){display:none}}

/* Core homepage structure */
.cannon-slides{display:grid;overflow:hidden;aspect-ratio:16/5;background:#f3f3f3}
.cannon-slide{grid-area:1/1;opacity:0;visibility:hidden;transition:opacity .55s ease;min-width:0}
.cannon-slide.is-active{opacity:1;visibility:visible;z-index:1}
.cannon-slide a,.cannon-slide picture{display:block;height:100%}.cannon-slide img{width:100%;height:100%;object-fit:contain}
.cannon-carousel .cannon-dots{z-index:2;bottom:16px;gap:2px}
.cannon-dots button{background:transparent;border:0;padding:8px;width:28px;height:28px;cursor:pointer;box-shadow:none;display:grid;place-items:center}
.cannon-dots button:before{content:"";width:9px;height:9px;border:1px solid #fff;border-radius:50%;background:#ffffff55;box-shadow:0 0 2px #333}
.cannon-dots button[aria-pressed=true]:before{background:#fff}.cannon-dots button:focus-visible{outline:2px solid white;outline-offset:0}

.cannon-section-title{display:flex;align-items:center;gap:28px}.cannon-section-title:before,.cannon-section-title:after{content:"";height:1px;background:#d7d7d7;flex:1}.cannon-section-title span{flex-shrink:0}
.cannon-category-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:20px;margin:0 0 48px}
.cannon-category-card{text-align:center;display:block;overflow:hidden}.cannon-category-card img{width:100%;aspect-ratio:5/4;height:auto;object-fit:cover;display:block;background:#f7f6f4}.cannon-category-card span{display:block;padding:13px 0}
.cannon-product-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px 24px}
.cannon-product-card{min-width:0;display:flex;flex-direction:column;text-align:center;box-shadow:none;background:white}
.cannon-product-image{position:relative;display:block;overflow:hidden;aspect-ratio:1}.cannon-product-image img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .3s ease}.cannon-product-image:hover img{transform:scale(1.05)}
.cannon-discount{position:absolute;top:12px;left:12px;z-index:1;background:var(--sale-color);color:#fff;padding:5px 9px;border-radius:4px;font-size:12px}
.cannon-product-card h2{font-family:var(--font-heading);font-size:18px;font-weight:400;line-height:1.4;margin:16px 0 12px;min-height:2.8em;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.cannon-card-price{display:flex;align-items:baseline;justify-content:center;flex-wrap:wrap;gap:10px;margin-bottom:18px}.cannon-current-price{color:var(--sale-color);font-size:21px;font-weight:700}.cannon-card-price del{color:#8a8a8a;font-size:14px}
.cannon-product-cta{display:block;padding:12px 20px;border:1px solid var(--primary-color);border-radius:var(--button-radius);margin-top:auto;font:inherit}
@media(max-width:900px){.cannon-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cannon-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.cannon-slides{aspect-ratio:1080/800}.cannon-category-grid{gap:14px 10px;margin-bottom:30px}.cannon-section-title{gap:12px}.cannon-section-title span{flex-shrink:1}.cannon-product-grid{gap:30px 12px}.cannon-product-card h2{font-size:16px}.cannon-current-price{font-size:18px}.cannon-category-card span{font-size:12px}}
@media(prefers-reduced-motion:reduce){.cannon-slide,.cannon-product-image img{transition:none}.cannon-product-image:hover img{transform:none}}


/* Final source-alignment pass: measured against Cannon Home's current static HTML/CSS. */
body.cannon-storefront.home .cannon-topbar { height:40px; font-size:10px; letter-spacing:0; }
body.cannon-storefront.home .cannon-ticker-group span { height:40px; padding-inline:32px; gap:8px; font-size:10.4px; }
body.cannon-storefront.home .cannon-ticker-group svg { width:14px; height:14px; }
body.cannon-storefront.home .cannon-hero .cannon-slides { aspect-ratio:3.2 / 1; }
body.cannon-storefront.home .cannon-hero .cannon-slide img { object-fit:cover; }
body.cannon-storefront.home .cannon-hero .cannon-dots { bottom:14px; gap:0; padding:0; }
body.cannon-storefront.home .cannon-hero .cannon-dots button { width:20px; height:20px; padding:5px; }
body.cannon-storefront.home .cannon-hero .cannon-dots button::before { width:10px; height:10px; border:0; border-radius:50%; background:rgba(0,0,0,.41); box-shadow:none; }
body.cannon-storefront.home .cannon-hero .cannon-dots button[aria-pressed="true"]::before { background:#1c1918; }
body.cannon-storefront.home .cannon-section-title { gap:16px; font:400 22px/1.15 Lato,Arial,sans-serif; letter-spacing:0; }
body.cannon-storefront.home .cannon-section-title::before,
body.cannon-storefront.home .cannon-section-title::after { height:1px; background:#bdbdbd; }
body.cannon-storefront.home .cannon-collection { max-width:1280px; padding:32px 48px 18px; }
body.cannon-storefront.home .cannon-section-title { margin:0 0 24px; }
body.cannon-storefront.home .cannon-product-grid { gap:0; }
body.cannon-storefront.home .cannon-product-card { flex:0 0 20%; padding:0 12px; align-items:center; }
body.cannon-storefront.home .cannon-product-card > * { width:100%; max-width:164px; box-sizing:border-box; }
body.cannon-storefront.home .cannon-product-image { width:156px; max-width:100%; aspect-ratio:1; background:#fff; }
body.cannon-storefront.home .cannon-card-gallery-image { position:absolute; inset:0; opacity:0; object-fit:contain; transition:opacity .25s ease,transform .25s ease; }
body.cannon-storefront.home .cannon-card-gallery-image.is-active { opacity:1; }
body.cannon-storefront.home .cannon-card-gallery-image.is-hover-image { opacity:1; }
body.cannon-storefront.home .cannon-product-image:hover .cannon-card-gallery-image.is-active { opacity:0; }
body.cannon-storefront.home .cannon-product-image:hover .cannon-card-gallery-image.is-hover-image { opacity:1; }
body.cannon-storefront.home .cannon-discount { top:16px; left:16px; padding:4px 12px; border-radius:24px; background:#a01a1a; color:#fff; font-size:11px; line-height:1.2; }
body.cannon-storefront.home .cannon-image-dots { display:flex; justify-content:center; gap:7px; margin:8px 0 10px; }
body.cannon-storefront.home .cannon-image-dots button { width:10px; height:10px; padding:0; border:0; border-radius:50%; background:#d0d0d0; box-shadow:none; cursor:pointer; }
body.cannon-storefront.home .cannon-image-dots button[aria-pressed="true"] { background:#777; }
body.cannon-storefront.home .cannon-product-brand { margin:0 0 4px; color:#555; font-size:14px; font-weight:600; line-height:1.25; letter-spacing:0; text-transform:uppercase; }
body.cannon-storefront.home .cannon-product-card h2 { display:block; width:100%; height:auto; min-height:0; margin:0 0 8px; overflow:hidden; font:400 12px/1.4 Lato,Arial,sans-serif; text-align:center; text-overflow:ellipsis; white-space:nowrap; }
body.cannon-storefront.home .cannon-card-price { justify-content:center; gap:7px; min-height:22px; margin:0 0 12px; flex-wrap:nowrap; }
body.cannon-storefront.home .cannon-current-price { color:#a01a1a; font-size:15px; line-height:1.35; font-weight:700; order:0; }
body.cannon-storefront.home .cannon-card-price del { order:1; color:#777; font-size:12px; line-height:1.35; }
body.cannon-storefront.home .cannon-product-cta { width:98%; max-width:164px; min-height:38px; justify-content:center; gap:8px; padding:9px 10px; border:1px solid #333; border-radius:18px; color:#242128; background:#fff; font-size:11px; line-height:1.3; font-weight:600; }
body.cannon-storefront.home .cannon-product-cta svg { width:17px; height:17px; }
body.cannon-storefront.home .cannon-product-cta:hover { color:#fff; background:#242128; border-color:#242128; }
body.cannon-storefront.home .cannon-product-pagination { display:none; }
body.cannon-storefront.home .cannon-carousel-arrow { top:42%; width:24px; height:34px; color:#777; }
body.cannon-storefront.home .cannon-carousel-arrow svg { width:18px; height:22px; }
body.cannon-storefront.home .cannon-home-slider { position:relative; width:100%; margin:0 0 26px; overflow:hidden; }
body.cannon-storefront.home .cannon-home-slider-viewport { width:100%; overflow:hidden; }
body.cannon-storefront.home .cannon-home-slider-track { display:flex; width:100%; transition:transform .45s ease; will-change:transform; }
body.cannon-storefront.home .cannon-home-slider-slide { flex:0 0 100%; min-width:0; }
body.cannon-storefront.home .cannon-home-slider-media,
body.cannon-storefront.home .cannon-home-slider-media picture { display:block; width:100%; }
body.cannon-storefront.home .cannon-home-slider-media img { display:block; width:100%; height:auto; }
body.cannon-storefront.home .cannon-home-slider-dots { display:flex; justify-content:center; align-items:center; gap:0; padding:8px 0 0; }
body.cannon-storefront.home .cannon-home-slider-dots button { width:20px; height:20px; padding:5px; border:0; background:transparent; box-shadow:none; cursor:pointer; }
body.cannon-storefront.home .cannon-home-slider-dots button::before { content:""; display:block; width:10px; height:10px; border-radius:50%; background:rgba(0,0,0,.41); }
body.cannon-storefront.home .cannon-home-slider-dots button[aria-pressed="true"]::before { background:#1c1918; }
body.cannon-storefront.home .cannon-home-slider-arrow { position:absolute; top:47%; z-index:2; width:36px; height:42px; display:grid; place-items:center; border:0; background:rgba(255,255,255,.72); color:#555; cursor:pointer; }
body.cannon-storefront.home .cannon-home-slider-arrow.prev { left:14px; }
body.cannon-storefront.home .cannon-home-slider-arrow.next { right:14px; }
body.cannon-storefront.home .cannon-home-slider-arrow svg { width:20px; height:20px; }
body.cannon-storefront.home .cannon-home-slider-arrow:disabled { opacity:.3; cursor:default; }
body.cannon-storefront.home .cannon-seo { max-width:none; background:#fff; }
body.cannon-storefront.home .cannon-seo-inner { max-width:1280px; margin:0 auto; padding:34px 40px 44px; }
body.cannon-storefront.home .cannon-seo h1 { margin:0 0 24px; color:#333; font:700 19px/1.4 Lato,Arial,sans-serif; text-align:center; }
body.cannon-storefront.home .cannon-seo-columns { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; max-width:none; margin:0; padding:0; }
body.cannon-storefront.home .cannon-seo-columns h3 { margin:0 0 10px; color:#444; font-size:14px; }
body.cannon-storefront.home .cannon-seo-columns p,
body.cannon-storefront.home .cannon-seo-accordions { color:#666; font-size:12px; line-height:1.7; }
body.cannon-storefront.home .cannon-seo-accordions { display:none; }
body.cannon-storefront.home .cannon-whatsapp { right:25px; bottom:85px; z-index:900; width:60px; height:60px; box-shadow:0 5px 15px rgba(0,0,0,.3); }
@media (max-width:700px) {
 body.cannon-storefront.home .cannon-topbar { height:36px; }
 body.cannon-storefront.home .cannon-ticker-group span { height:36px; padding-inline:22px; }
 body.cannon-storefront.home .cannon-hero .cannon-slides { aspect-ratio:1.35 / 1; }
 body.cannon-storefront.home .cannon-hero .cannon-dots { bottom:8px; }
 body.cannon-storefront.home .cannon-collection { padding:24px 12px 12px; }
 body.cannon-storefront.home .cannon-section-title { gap:10px; margin-bottom:18px; font-size:18px; }
 body.cannon-storefront.home .cannon-product-card { flex-basis:50%; padding:0 8px; }
 body.cannon-storefront.home .cannon-product-card > * { max-width:100%; }
 body.cannon-storefront.home .cannon-product-image { width:100%; max-width:156px; }
 body.cannon-storefront.home .cannon-discount { top:10px; left:10px; padding:3px 8px; font-size:10px; }
 body.cannon-storefront.home .cannon-product-brand { font-size:11px; }
 body.cannon-storefront.home .cannon-product-card h2 { font-size:11px; }
 body.cannon-storefront.home .cannon-current-price { font-size:13px; }
 body.cannon-storefront.home .cannon-card-price del { font-size:10px; }
 body.cannon-storefront.home .cannon-product-cta { min-height:36px; font-size:10px; padding:8px 5px; }
 body.cannon-storefront.home .cannon-carousel-arrow.prev { left:-8px; }
 body.cannon-storefront.home .cannon-carousel-arrow.next { right:-8px; }
 body.cannon-storefront.home .cannon-home-slider { margin-bottom:18px; }
 body.cannon-storefront.home .cannon-home-slider-dots { padding-top:5px; }
 body.cannon-storefront.home .cannon-home-slider-arrow { width:30px; height:36px; }
 body.cannon-storefront.home .cannon-home-slider-arrow.prev { left:4px; }
 body.cannon-storefront.home .cannon-home-slider-arrow.next { right:4px; }
 body.cannon-storefront.home .cannon-seo-inner { padding:24px 18px 30px; }
 body.cannon-storefront.home .cannon-seo h1 { font-size:16px; margin-bottom:18px; }
 body.cannon-storefront.home .cannon-seo-columns { display:none; }
 body.cannon-storefront.home .cannon-seo-accordions { display:block; }
 body.cannon-storefront.home .cannon-seo-accordions details { border-bottom:1px solid #ddd; padding:12px 0; }
 body.cannon-storefront.home .cannon-seo-accordions summary { color:#444; font-weight:700; }
 body.cannon-storefront.home .cannon-seo-accordions p { margin:10px 0 0; }
 body.cannon-storefront.home .cannon-whatsapp { right:16px; bottom:calc(24px + env(safe-area-inset-bottom)); width:54px; height:54px; }
}
@media (max-width:380px) {
 body.cannon-storefront.home .cannon-section-title { font-size:16px; }
 body.cannon-storefront.home .cannon-current-price { font-size:12px; }
 body.cannon-storefront.home .cannon-product-card > * { max-width:100%; }
}
@media (prefers-reduced-motion:reduce) {
 body.cannon-storefront.home .cannon-slide,
 body.cannon-storefront.home .cannon-home-slider-track,
 body.cannon-storefront.home .cannon-card-gallery-image,
 body.cannon-storefront.home .cannon-whatsapp { transition:none; }
 body.cannon-storefront.home .cannon-product-image:hover .cannon-card-gallery-image.is-active { opacity:1; }
 body.cannon-storefront.home .cannon-product-image:hover .cannon-card-gallery-image.is-hover-image { opacity:0; }
}

/* Runtime-measured desktop/mobile card counts for the three live-source editorial rows. */
body.cannon-storefront.home .cannon-hero .cannon-slide a { margin:0 4px; }
body.cannon-storefront.home .cannon-home-slider { margin:0 0 26px; overflow:hidden; }
body.cannon-storefront.home .cannon-home-slider-track { width:100%; transform:translate3d(0,0,0); }
body.cannon-storefront.home .cannon-home-slider-slide { flex:0 0 calc(100% / var(--slides-visible, 3)); padding:0 4px; }
body.cannon-storefront.home .cannon-combo-slider { --slides-visible:3; }
body.cannon-storefront.home .cannon-category-slider { --slides-visible:3; }
body.cannon-storefront.home .cannon-hilos-slider { --slides-visible:5; }
body.cannon-storefront.home .cannon-home-slider-dots { display:none; }
body.cannon-storefront.home .cannon-home-slider-arrow { display:none; }
body.cannon-storefront.home .cannon-product-brand { font-size:14px; font-weight:600; }
body.cannon-storefront.home .cannon-product-card h2 { font-size:14px; line-height:1; }
body.cannon-storefront.home .cannon-current-price,
body.cannon-storefront.home .cannon-card-price del { font-size:13px; }
body.cannon-storefront.home .cannon-discount { font-size:14px; }
body.cannon-storefront.home .cannon-product-cta { min-height:37px; padding:9px 10px; font-size:13px; line-height:17px; font-weight:600; }
body.cannon-storefront.home .cannon-newsletter { width:100%; max-width:232px; padding:0; border:0; border-radius:0; background:transparent; }
body.cannon-storefront.home .cannon-newsletter h2 { font-size:21px; }
body.cannon-storefront.home .cannon-newsletter input:not([type=checkbox]) { height:36px; margin:8px 0 14px; padding:0 10px; border:2px solid #7d7d7d; border-radius:0; font-size:12px; }
body.cannon-storefront.home .cannon-newsletter button { min-height:36px; padding:8px 20px; border:1px solid #7d7d7d; border-radius:0; background:#7d7d7d; font-size:11px; }
body.cannon-storefront.home .cannon-newsletter button:hover { background:#6f6f6f; }
body.cannon-storefront.home .cannon-seo h1 { margin:0 0 24px; color:#333; font:700 19px/1.4 Lato,Arial,sans-serif; text-align:center; }
@media (max-width:700px) {
 body.cannon-storefront.home .cannon-combo-slider { --slides-visible:2; }
 body.cannon-storefront.home .cannon-category-slider { --slides-visible:3; }
 body.cannon-storefront.home .cannon-hilos-slider { --slides-visible:3; }
 body.cannon-storefront.home .cannon-combo-slider .cannon-home-slider-dots,
 body.cannon-storefront.home .cannon-hilos-slider .cannon-home-slider-dots { display:flex; }
 body.cannon-storefront.home .cannon-home-slider { margin-bottom:18px; }
}

/* The live hero image has a 4px desktop/mobile inset; size the frame to the inset art. */
body.cannon-storefront.home .cannon-hero .cannon-slides { width:calc(100% - 8px); margin:0 auto; aspect-ratio:3.2 / 1; }
body.cannon-storefront.home .cannon-hero .cannon-slide a { margin:0; }
@media (max-width:700px) { body.cannon-storefront.home .cannon-hero .cannon-slides { aspect-ratio:1.35 / 1; } }

/* Desktop header geometry measured from the live 1280px layout. */
body.cannon-storefront.home .cannon-mainnav { max-width:1280px; padding:28px 72px; grid-template-columns:minmax(0,1fr) 177px minmax(0,1fr); gap:40px; }
body.cannon-storefront.home .cannon-search { max-width:347px; border-radius:20px; }
body.cannon-storefront.home .cannon-logo img { width:177px; height:54px; object-fit:contain; }
@media (max-width:1000px) {
 body.cannon-storefront.home .cannon-mainnav { padding:24px; grid-template-columns:minmax(0,1fr) 177px minmax(0,1fr); gap:20px; }
 body.cannon-storefront.home .cannon-search { max-width:100%; }
}
@media (max-width:700px) {
 body.cannon-storefront.home .cannon-mainnav { grid-template-columns:minmax(0,1fr) minmax(0,1fr); padding:16px; gap:16px; }
 body.cannon-storefront.home .cannon-logo img { width:150px; height:auto; }
}

/* The source applies 8px visible dots inside approximately 20px click targets. */
body.cannon-storefront.home .cannon-hero .cannon-dots button::before,
body.cannon-storefront.home .cannon-home-slider-dots button::before { width:8px; height:8px; }
body.cannon-storefront.home .cannon-image-dots { gap:0; }
body.cannon-storefront.home .cannon-image-dots button { width:20px; height:20px; display:grid; place-items:center; background:transparent; }
body.cannon-storefront.home .cannon-image-dots button::before { content:""; display:block; width:8px; height:8px; border-radius:50%; background:#d0d0d0; }
body.cannon-storefront.home .cannon-image-dots button[aria-pressed="true"]::before { background:#777; }


/* Header visual regression calibration */
.cannon-header .cannon-topbar { height:32px; color:#fff; background:#000; font-size:11px; letter-spacing:.5px; }
body.cannon-storefront .cannon-header .cannon-ticker-group span,
body.cannon-storefront .cannon-header .cannon-announcement { display:flex; align-items:center; justify-content:center; gap:8px; color:#fff; font:700 11px/1.2 Lato,Arial,sans-serif; letter-spacing:.5px; text-transform:uppercase; white-space:nowrap; }
.cannon-header .cannon-ticker-group span { height:32px; padding-inline:32px; }
body.cannon-storefront .cannon-header .cannon-ticker-group svg,
body.cannon-storefront .cannon-header .cannon-announcement svg { width:15px; height:15px; flex:0 0 15px; stroke-width:1.4; }
.cannon-header .cannon-mainnav { min-width:0; }
.cannon-header .cannon-search { display:flex; align-items:center; gap:6px; overflow:visible; }
body.cannon-storefront .cannon-header .cannon-search { gap:6px!important; }
body.cannon-storefront .cannon-header .cannon-search input[type=search] { order:1; flex:1 1 auto; min-width:0; width:auto; color:#222; font:400 12px/1.2 Lato,Arial,sans-serif; }
body.cannon-storefront .cannon-header .cannon-search input[type=search]::placeholder { color:#757575; opacity:1; }
body.cannon-storefront .cannon-header .cannon-search-placeholder { order:2; display:flex!important; align-items:center; flex:0 0 auto; gap:6px; margin-left:auto; color:#757575; }
.cannon-header .cannon-search-placeholder svg { display:block; width:16px; height:16px; color:#757575; stroke-width:1.3; }
.cannon-header .cannon-search button[type=submit] { order:3; display:flex; flex:0 0 18px; align-items:center; justify-content:center; width:18px; height:22px; margin:0; padding:0; color:#4a4a4a; }
.cannon-header .cannon-search button[type=submit] svg { width:18px; height:18px; stroke-width:1.3; }
.cannon-header .cannon-actions { align-items:center; flex-wrap:nowrap; gap:24px; }
.cannon-header .cannon-actions>a { position:relative; display:flex; align-items:center; justify-content:center; gap:6px; color:#222; font:400 11px/1.2 Lato,Arial,sans-serif; white-space:nowrap; }
.cannon-header .cannon-actions>a>svg { width:22px; height:22px; stroke-width:1.3; }
.cannon-header .cannon-delivery-commune:not(:empty)::before { content:" "; }
.cannon-header .cannon-cart-count { top:-4px; left:calc(50% + 3px); transform:none; min-width:17px; height:17px; padding:0 4px; border-radius:999px; font:700 9px/17px Lato,Arial,sans-serif; }
.cannon-header .cannon-cart-count[hidden] { display:none!important; }
.cannon-header .cannon-menu-shell { border-bottom:1px solid #e7e7e7; }
.cannon-header .cannon-mega-nav { flex-wrap:nowrap; gap:clamp(14px,1.65vw,24px); border-top:0; }
.cannon-header .cannon-nav-label { gap:4px; }
.cannon-header .cannon-nav-label>a,
.cannon-header .cannon-mega-nav>.cannon-new { font-family:inherit; font-size:12px; font-weight:600; letter-spacing:0; text-transform:uppercase; }
.cannon-header .cannon-nav-label>a { display:block; }
.cannon-header .cannon-submenu-toggle { flex:0 0 14px; width:14px; height:18px; padding:0; }
.cannon-header .cannon-submenu-toggle svg { width:10px; height:10px; stroke-width:1.3; }
.cannon-header .cannon-mega-nav>.cannon-new { color:#d32f2f; }
@media (max-width:1050px) {
 body.cannon-storefront .cannon-header .cannon-mainnav { gap:20px; }
 body.cannon-storefront .cannon-header .cannon-search { gap:6px!important; }
 .cannon-header .cannon-actions { gap:24px; }
}
@media (max-width:700px) {
 body.cannon-storefront .cannon-header .cannon-mainnav { gap:16px; }
 body.cannon-storefront .cannon-header .cannon-search { gap:6px!important; }
 .cannon-header .cannon-search-placeholder svg { width:15px; height:15px; }
 .cannon-header .cannon-actions { gap:13px; }
 .cannon-header .cannon-actions>a { font-size:9px; }
 .cannon-header .cannon-mega-nav { flex-wrap:wrap; }
}
@media (prefers-reduced-motion:reduce) { .cannon-header .cannon-ticker { animation:none; } }


/* Live Cannon Home Flash Sale: real local products in five seamless pages. */
body.cannon-storefront.home .cannon-flash-sale { width:min(1024px,calc(100% - 32px)); max-width:1200px; margin:28px auto 36px; padding:36px 40px 44px; overflow:hidden; border-radius:28px; background:#c7b299; color:#111; font-family:Montserrat,Lato,Arial,sans-serif; }
body.cannon-storefront.home .cannon-flash-inner { width:100%; max-width:1200px; margin:0 auto; }
body.cannon-storefront.home .cannon-flash-header { display:grid; grid-template-columns:minmax(150px,1fr) auto minmax(174px,1fr); align-items:center; gap:24px; width:100%; margin:0 0 32px; padding:0 8px; }
body.cannon-storefront.home .cannon-flash-brand { position:relative; display:flex; min-height:66px; align-items:flex-end; }
body.cannon-storefront.home .cannon-flash-brand span { position:absolute; top:-5px; left:0; color:rgba(255,255,255,.48); font-size:53px; font-weight:800; line-height:1; letter-spacing:-3px; }
body.cannon-storefront.home .cannon-flash-brand strong { position:relative; z-index:1; padding:0 0 5px 4px; color:#111; font-size:17px; font-weight:800; letter-spacing:1.15px; line-height:1; }
body.cannon-storefront.home .cannon-flash-offer { display:flex; align-items:center; justify-content:center; gap:14px; white-space:nowrap; }
body.cannon-storefront.home .cannon-flash-offer>strong { display:flex; align-items:center; color:#080808; font-size:70px; font-weight:800; letter-spacing:-4px; line-height:.9; }
body.cannon-storefront.home .cannon-flash-offer>strong>span { font-size:92px; }
body.cannon-storefront.home .cannon-flash-offer>strong sup { align-self:flex-start; margin:3px 0 0 2px; font-size:38px; letter-spacing:-2px; line-height:1; }
body.cannon-storefront.home .cannon-flash-offer>strong small { align-self:center; margin:12px 0 0 5px; font-size:18px; font-weight:700; letter-spacing:0; }
body.cannon-storefront.home .cannon-flash-category { color:#171717; font-size:16px; font-weight:700; line-height:1.25; }
body.cannon-storefront.home .cannon-flash-countdown { display:flex; align-items:center; justify-content:flex-end; gap:7px; white-space:nowrap; }
body.cannon-storefront.home .cannon-flash-countdown span { display:grid; min-width:47px; height:45px; padding:0 8px; place-items:center; border-radius:12px; background:#fff; color:#111; font:700 23px/1 Montserrat,Lato,Arial,sans-serif; font-variant-numeric:tabular-nums; }
body.cannon-storefront.home .cannon-flash-countdown i { color:#111; font-size:17px; font-style:normal; font-weight:700; }
body.cannon-storefront.home .cannon-flash-stage { position:relative; width:100%; margin:0 auto 15px; }
body.cannon-storefront.home .cannon-flash-window { width:100%; overflow:hidden; outline:none; touch-action:pan-y; }
body.cannon-storefront.home .cannon-flash-track { display:flex; width:100%; min-width:0; align-items:stretch; transition:transform .45s cubic-bezier(.22,.61,.36,1); will-change:transform; }
body.cannon-storefront.home .cannon-flash-page { display:grid; flex:0 0 100%; min-width:0; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; align-items:stretch; }
body.cannon-storefront.home .cannon-flash-card { position:relative; display:flex; min-width:0; flex-direction:column; padding:12px; border-radius:14px; background:#fff; color:#171717; text-align:center; }
body.cannon-storefront.home .cannon-flash-image { position:relative; display:grid; width:100%; aspect-ratio:1; margin:0 auto 12px; overflow:hidden; place-items:center; background:#fff; }
body.cannon-storefront.home .cannon-flash-image img { display:block; width:100%; height:100%; object-fit:contain; transition:transform .35s ease; }
body.cannon-storefront.home .cannon-flash-image:hover img { transform:scale(1.035); }
body.cannon-storefront.home .cannon-flash-badge { position:absolute; z-index:1; top:7px; left:7px; padding:5px 11px; border-radius:999px; background:#a01a1a; color:#fff; font-size:11px; font-weight:700; line-height:1.1; }
body.cannon-storefront.home .cannon-flash-brand-name { min-height:16px; margin:0 0 4px; color:#777; font-size:10px; font-weight:500; letter-spacing:.55px; line-height:1.4; text-transform:uppercase; }
body.cannon-storefront.home .cannon-flash-name { display:-webkit-box; min-height:32px; margin:0 0 7px; overflow:hidden; color:#222; font-size:11px; font-weight:500; line-height:1.45; text-decoration:none; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
body.cannon-storefront.home .cannon-flash-prices { display:flex; min-height:19px; align-items:baseline; justify-content:center; gap:7px; margin:0 0 10px; white-space:nowrap; }
body.cannon-storefront.home .cannon-flash-prices del { color:#777; font-size:10px; font-weight:400; text-decoration-thickness:1px; }
body.cannon-storefront.home .cannon-flash-prices ins { color:#a01a1a; font-size:12px; font-weight:700; text-decoration:none; }
body.cannon-storefront.home .cannon-flash-cart { margin:auto 0 0!important; }
body.cannon-storefront.home .cannon-flash-add { display:flex!important; min-height:34px; width:100%; align-items:center; justify-content:center; gap:7px; margin:0!important; padding:7px 8px!important; border:1px solid #242128!important; border-radius:30px!important; background:#fff!important; color:#171717!important; font:500 10px/1.2 Lato,Arial,sans-serif!important; text-decoration:none!important; transition:background .2s ease,color .2s ease,border-color .2s ease!important; }
body.cannon-storefront.home .cannon-flash-add:hover { border-color:#000!important; background:#000!important; color:#fff!important; }
body.cannon-storefront.home .cannon-flash-add svg { width:15px; height:15px; flex:0 0 15px; }
body.cannon-storefront.home .cannon-flash-arrow { position:absolute; z-index:2; top:50%; display:grid; width:34px; height:34px; padding:0; place-items:center; transform:translateY(-50%); border:1px solid #d7d7d7; border-radius:50%; background:#fff; color:#555; box-shadow:0 1px 5px rgba(0,0,0,.07); cursor:pointer; transition:box-shadow .2s ease,background .2s ease; }
body.cannon-storefront.home .cannon-flash-arrow:hover { background:#fff; box-shadow:0 3px 10px rgba(0,0,0,.16); }
body.cannon-storefront.home .cannon-flash-arrow.is-prev { left:-17px; }
body.cannon-storefront.home .cannon-flash-arrow.is-next { right:-17px; }
body.cannon-storefront.home .cannon-flash-arrow svg { width:19px; height:19px; }
body.cannon-storefront.home .cannon-flash-page-dots { display:flex; justify-content:center; align-items:center; gap:8px; margin:0 auto 22px; }
body.cannon-storefront.home .cannon-flash-page-dots button { width:7px; height:7px; padding:0; border:0; border-radius:50%; background:#777; opacity:.48; cursor:pointer; transition:opacity .2s ease,transform .2s ease; }
body.cannon-storefront.home .cannon-flash-page-dots button[aria-current="true"] { background:#171717; opacity:1; transform:scale(1.2); }
body.cannon-storefront.home .cannon-flash-cta { display:table; margin:0 auto; padding:16px 48px; border-radius:999px; background:#000; color:#fff; font-size:15px; font-weight:700; letter-spacing:.2px; line-height:1.25; text-align:center; text-decoration:none; transition:transform .2s ease,background .2s ease; }
body.cannon-storefront.home .cannon-flash-cta:hover { transform:translateY(-1px); background:#252525; color:#fff; }
body.cannon-storefront.home .cannon-flash-empty { color:#333; text-align:center; }
@media(max-width:1050px) {
 body.cannon-storefront.home .cannon-flash-sale { width:calc(100% - 32px); padding:30px 30px 36px; }
 body.cannon-storefront.home .cannon-flash-header { grid-template-columns:minmax(120px,1fr) auto minmax(150px,1fr); gap:14px; }
 body.cannon-storefront.home .cannon-flash-offer>strong { font-size:56px; }
 body.cannon-storefront.home .cannon-flash-offer>strong>span { font-size:74px; }
 body.cannon-storefront.home .cannon-flash-category { font-size:13px; }
 body.cannon-storefront.home .cannon-flash-countdown span { min-width:39px; height:40px; font-size:19px; }
}
@media(max-width:700px) {
 body.cannon-storefront.home .cannon-flash-sale { width:calc(100% - 20px); margin:20px auto 26px; padding:22px 16px 26px; border-radius:22px; }
 body.cannon-storefront.home .cannon-flash-header { grid-template-columns:minmax(0,1fr) auto; gap:5px 10px; margin-bottom:19px; padding:0; }
 body.cannon-storefront.home .cannon-flash-brand { grid-column:1; grid-row:1; min-height:51px; }
 body.cannon-storefront.home .cannon-flash-brand span { top:0; font-size:42px; }
 body.cannon-storefront.home .cannon-flash-brand strong { padding-bottom:4px; font-size:13px; }
 body.cannon-storefront.home .cannon-flash-countdown { grid-column:2; grid-row:1; gap:4px; }
 body.cannon-storefront.home .cannon-flash-countdown span { min-width:31px; height:34px; padding:0 5px; border-radius:9px; font-size:15px; }
 body.cannon-storefront.home .cannon-flash-countdown i { font-size:12px; }
 body.cannon-storefront.home .cannon-flash-offer { grid-column:1/-1; grid-row:2; gap:10px; margin-top:8px; }
 body.cannon-storefront.home .cannon-flash-offer>strong { font-size:49px; letter-spacing:-3px; }
 body.cannon-storefront.home .cannon-flash-offer>strong>span { font-size:63px; }
 body.cannon-storefront.home .cannon-flash-offer>strong sup { margin-top:1px; font-size:27px; }
 body.cannon-storefront.home .cannon-flash-offer>strong small { margin-top:8px; font-size:14px; }
 body.cannon-storefront.home .cannon-flash-category { font-size:12px; }
 body.cannon-storefront.home .cannon-flash-stage { margin-bottom:12px; }
 body.cannon-storefront.home .cannon-flash-page { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
 body.cannon-storefront.home .cannon-flash-card { padding:9px; border-radius:11px; }
 body.cannon-storefront.home .cannon-flash-brand-name { font-size:9px; }
 body.cannon-storefront.home .cannon-flash-name { font-size:11px; }
 body.cannon-storefront.home .cannon-flash-prices del { font-size:10px; }
 body.cannon-storefront.home .cannon-flash-prices ins { font-size:12px; }
 body.cannon-storefront.home .cannon-flash-add { min-height:36px; font-size:10px!important; }
 body.cannon-storefront.home .cannon-flash-arrow { width:31px; height:31px; }
 body.cannon-storefront.home .cannon-flash-arrow.is-prev { left:-11px; }
 body.cannon-storefront.home .cannon-flash-arrow.is-next { right:-11px; }
 body.cannon-storefront.home .cannon-flash-cta { padding:13px 34px; font-size:13px; }
}
@media(prefers-reduced-motion:reduce) {
 body.cannon-storefront.home .cannon-flash-track,
 body.cannon-storefront.home .cannon-flash-image img,
 body.cannon-storefront.home .cannon-flash-add,
 body.cannon-storefront.home .cannon-flash-arrow,
 body.cannon-storefront.home .cannon-flash-page-dots button,
 body.cannon-storefront.home .cannon-flash-cta { transition:none; }
}

/* Local NOW sale archive reached from the homepage campaign CTA. */
body.cannon-storefront .cannon-flash-archive { max-width:1280px; margin:0 auto; padding:42px 40px 64px; }
body.cannon-storefront .cannon-flash-archive>header { margin:0 0 28px; text-align:center; }
body.cannon-storefront .cannon-flash-archive>header h1 { margin:0 0 8px; color:#171717; font:700 28px/1.2 Montserrat,Lato,Arial,sans-serif; letter-spacing:.6px; }
body.cannon-storefront .cannon-flash-archive>header p { margin:0; color:#666; font-size:14px; }
@media(max-width:700px) { body.cannon-storefront .cannon-flash-archive { padding:28px 16px 40px; } body.cannon-storefront .cannon-flash-archive>header h1 { font-size:21px; } }
