
:root{
 --cream:#f7f1e4; --paper:#fffdf7; --ink:#243523; --text:#2b2a25;
 --gold:#b98a20; --gold2:#d7b758; --line:#dfd4bd; --sage:#65725b; --soft:#efe6d3;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.65}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.wrap{width:min(1180px,92%);margin:auto}
h1,h2,h3,.brand-copy strong{font-family:Georgia,"Times New Roman",serif;color:var(--ink)}
h1{font-size:clamp(2.8rem,6.5vw,6rem);line-height:1.02;margin:.16em 0 .28em;font-weight:500}
h2{font-size:clamp(2rem,4vw,3.8rem);line-height:1.08;margin:.25em 0 .36em;font-weight:500}
h3{font-size:1.18rem}
p{margin:.55em 0 1.1em}.lead{font-size:1.15rem;color:#504a3f}.small-note,.notice{font-size:.9rem;color:#6b6254}
.eyebrow,.product-kicker{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;font-weight:800;color:var(--gold)}
.light{color:#f2d98a}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,253,247,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav-wrap{width:min(1280px,95%);margin:auto;min-height:94px;display:flex;align-items:center;gap:24px}
.brand{display:flex;align-items:center;gap:12px;margin-right:auto;min-width:270px}
.brand-bee{width:58px;height:58px;display:grid;place-items:center;border-radius:50%;overflow:hidden;border:1px solid #c7b893;background:#f4eedc}
.brand-bee img{width:100%;height:100%;object-fit:cover}
.brand-copy strong{display:block;font-size:1.36rem;letter-spacing:.08em;line-height:1}
.brand-copy small{display:block;color:var(--gold);font-size:.62rem;letter-spacing:.18em;margin-top:7px;font-weight:800}
.main-nav{display:flex;gap:19px;align-items:center;font-size:.78rem;font-weight:800;letter-spacing:.04em}
.main-nav a{padding:35px 0 30px;border-bottom:2px solid transparent}
.main-nav a:hover{border-color:var(--gold)}
.menu-btn{display:none;border:1px solid var(--line);background:transparent;padding:9px 12px;border-radius:8px}
.hero{min-height:77vh;display:grid;align-items:end;position:relative;background:#2d2416;overflow:hidden}
.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,25,14,.82) 0%,rgba(22,31,17,.44) 46%,rgba(20,20,14,.12) 77%),url("assets/hero.jpg") center/cover no-repeat}
.hero-content{position:relative;color:white;padding:105px 0 82px;max-width:770px}
.hero-content h1{color:white}.hero-content>p:not(.eyebrow){font-size:1.2rem;max-width:650px;color:#f3eee3}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}
.button{display:inline-flex;align-items:center;justify-content:center;padding:13px 19px;border-radius:3px;font-size:.79rem;font-weight:800;letter-spacing:.04em}
.button.gold{background:var(--gold);color:#fff}.button.dark{background:var(--ink);color:#fff}.button.outline-light{border:1px solid rgba(255,255,255,.65);color:#fff;background:rgba(0,0,0,.16)}
.button.disabled{cursor:default;opacity:.8}
.text-link{font-size:.79rem;font-weight:800;color:#856616;letter-spacing:.06em;border-bottom:1px solid #bfa665;padding-bottom:3px}
.section{padding:88px 0}.paper{background:var(--paper)}
.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:center}
.image-card{border-radius:12px;overflow:hidden;box-shadow:0 18px 50px rgba(49,37,16,.12)}.image-card img{width:100%;aspect-ratio:4/3;object-fit:cover}.image-card.tall img{aspect-ratio:1.08/1;object-fit:cover}
.honeycomb-corner{position:relative;overflow:hidden}
.honeycomb-corner:after{content:"";position:absolute;right:-15px;top:14px;width:250px;height:180px;opacity:.12;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg width='88' height='76' viewBox='0 0 88 76' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%23b98a20' stroke-width='2'%3E%3Cpath d='M22 1l21 12v24L22 49 1 37V13z'/%3E%3Cpath d='M66 27l21 12v24L66 75 45 63V39z'/%3E%3C/g%3E%3C/svg%3E")}
.feature-band{padding:46px 0;background:#f2ead9;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.feature-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.feature-grid article{padding:10px 28px;border-right:1px solid var(--line);text-align:center}.feature-grid article:last-child{border-right:0}
.feature-icon{font-size:2.3rem;color:var(--sage);display:block;line-height:1}.feature-grid h3{letter-spacing:.08em}.feature-grid p{font-size:.88rem}
.cta-panel{background:var(--ink);color:#fff;padding:45px;border-radius:16px;display:flex;justify-content:space-between;gap:30px;align-items:center}.cta-panel h2{color:#fff}.cta-panel p{max-width:690px;color:#e7e0d4}
.page-hero{padding:92px 0 65px;background:linear-gradient(120deg,#f4ead7,#fffdf7)}.page-hero.compact h1{font-size:clamp(2.8rem,5.5vw,5rem);max-width:900px}.page-hero p{max-width:800px;font-size:1.1rem}
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.product-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 11px 26px rgba(43,35,18,.07)}
.product-card>img{width:100%;aspect-ratio:4/3;object-fit:cover}.product-body{padding:20px}.product-body h2{font-size:1.55rem}.price{font:700 1.55rem Georgia,serif;color:var(--ink);margin:14px 0}.price small{display:block;font:normal .75rem Arial,sans-serif;color:#7a6d5d;margin-top:6px}.muted-price{color:#8b8072}
.sold-label{position:absolute;z-index:2;top:18px;left:18px;background:#2d332b;color:white;padding:7px 12px;font-size:.72rem;font-weight:800;letter-spacing:.1em}
.delivery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.delivery-grid article{background:var(--paper);border:1px solid var(--line);padding:24px;border-radius:12px}
.queen-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.queen-card{background:white;border:1px solid var(--line);border-radius:14px;overflow:hidden}.queen-card img{width:100%;aspect-ratio:1.08/1;object-fit:cover}.queen-card>div{padding:24px}.queen-card h2{font-size:2rem}.queen-dot{display:inline-block;width:16px;height:16px;border-radius:50%;border:1px solid #8f887d;margin-bottom:8px}.blue-dot{background:#1f69ce}.white-dot{background:#fff}
.learn-box{margin-top:35px;padding:35px;border-radius:14px;background:#f1eadc;border:1px solid var(--line)}
.article-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.article-card{padding:30px;background:white;border:1px solid var(--line);border-radius:12px}.article-card h2{font-size:2rem}
.journal-list{display:grid;gap:22px}.journal-list article{padding:30px;background:#fff;border:1px solid var(--line);border-radius:12px}.journal-list time{color:var(--gold);font-weight:800;font-size:.78rem;letter-spacing:.1em}
.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.contact-card{padding:30px;background:#fff;border:1px solid var(--line);border-radius:12px}.contact-card span{display:block;color:var(--gold);font-size:.73rem;font-weight:800;letter-spacing:.14em}.contact-card strong{display:block;margin-top:8px;font:500 1.4rem Georgia,serif;color:var(--ink)}
.site-footer{background:#20371f;color:#f7f2e8;padding:45px 0}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr 1.2fr;gap:40px}.site-footer strong{font-family:Georgia,serif;letter-spacing:.06em}.site-footer p,.site-footer a{color:#eee6d7;font-size:.9rem}.site-footer a{text-decoration:underline;text-underline-offset:3px}
.notice{background:#eee4d1;padding:15px 18px;border-left:4px solid var(--gold);margin-top:28px}
@media(max-width:1050px){
 .main-nav{display:none;position:absolute;top:94px;left:0;right:0;background:#fffdf7;padding:14px 4%;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:0}
 .main-nav.open{display:flex}.main-nav a{padding:11px 0;width:100%;border:0}.menu-btn{display:block}.brand{min-width:0}
}
@media(max-width:760px){
 .section{padding:62px 0}.nav-wrap{min-height:78px}.main-nav{top:78px}.brand-copy strong{font-size:1.06rem}.brand-copy small{font-size:.52rem}.brand-bee,.brand-bee img{width:42px}
 .hero{min-height:72vh}.hero-content{padding:85px 0 58px}.split,.product-grid,.queen-grid,.article-grid,.delivery-grid,.contact-grid,.footer-grid{grid-template-columns:1fr}
 .reverse-mobile figure{order:2}.feature-grid{grid-template-columns:1fr 1fr}.feature-grid article:nth-child(2){border-right:0}.feature-grid article{border-bottom:1px solid var(--line);padding:20px}
 .cta-panel{display:block}.cta-panel .button{margin-top:12px}.page-hero{padding:62px 0 44px}
}
@media(max-width:480px){.feature-grid{grid-template-columns:1fr}.feature-grid article{border-right:0}.brand-copy small{display:none}.brand-copy strong{font-size:.95rem;letter-spacing:.04em}}

.award-photo{display:flex;justify-content:center;align-items:center;padding:18px}
.award-photo img{width:min(78%,560px);height:auto;object-fit:contain;border-radius:10px;box-shadow:0 18px 45px rgba(49,37,16,.10)}
.queen-grid.three{grid-template-columns:repeat(3,1fr)}
.queen-note{margin:30px 0 0;padding:18px 20px;background:#f3ead8;border-left:4px solid var(--gold);font-size:1rem}
@media(max-width:900px){.queen-grid.three{grid-template-columns:1fr}.award-photo img{width:min(92%,560px)}}

.site-header:before{
 content:"";position:absolute;left:0;right:0;top:0;height:94px;pointer-events:none;opacity:.18;
 background-image:
 radial-gradient(circle at 0 0, transparent 0 42px, rgba(185,138,32,.16) 43px 44px, transparent 45px),
 url("data:image/svg+xml,%3Csvg width='88' height='76' viewBox='0 0 88 76' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%23b98a20' stroke-width='1.8'%3E%3Cpath d='M22 1l21 12v24L22 49 1 37V13z'/%3E%3Cpath d='M66 27l21 12v24L66 75 45 63V39z'/%3E%3C/g%3E%3C/svg%3E");
 background-size:auto,88px 76px;
 background-position:center -22px,center -26px;
 mask-image:linear-gradient(to right,transparent 0%,black 12%,black 88%,transparent 100%);
}
.site-header{overflow:hidden}
.nav-wrap{position:relative;z-index:2}
.brand-bee{border:0;background:transparent;border-radius:0;overflow:visible}
.brand-bee img{object-fit:contain;filter:contrast(1.05)}
.process-story{display:grid;gap:28px}
.process-card{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.process-card:nth-child(even) img{order:2}.process-card img{width:100%;height:100%;min-height:330px;object-fit:cover}.process-card div{padding:28px}.process-card span{color:var(--gold);font-weight:800;letter-spacing:.12em}
.gallery-grid{columns:3 280px;column-gap:18px}.gallery-card{break-inside:avoid;margin:0 0 18px;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.gallery-card img{width:100%;height:auto}.gallery-card figcaption{padding:10px 14px;font-size:.83rem;color:#6d6254}
@media(max-width:900px){.product-grid{grid-template-columns:repeat(2,1fr)}.process-card{grid-template-columns:1fr}.process-card:nth-child(even) img{order:0}.gallery-grid{columns:2 220px}}
@media(max-width:560px){.product-grid{grid-template-columns:1fr}.gallery-grid{columns:1}.site-header:before{opacity:.12}}


/* ===== Draft 3 refinement: masthead, restrained honeycomb, hero crop ===== */
.site-header{
  position:sticky; top:0; z-index:60; background:#fffdf7;
  border-bottom:0; box-shadow:0 6px 24px rgba(31,50,31,.10);
}
.brand-masthead{
  background:#20371f; color:#fffaf0; min-height:118px;
  display:flex; align-items:center; justify-content:center; padding:22px 4%;
  position:relative; overflow:hidden;
}
.brand-masthead:before,.brand-masthead:after{
  content:""; position:absolute; width:170px; height:1px; background:linear-gradient(90deg,transparent,#c6a24c,transparent);
  top:50%;
}
.brand-masthead:before{left:3%}.brand-masthead:after{right:3%}
.brand-wordmark{display:flex; align-items:center; gap:24px; text-align:left; color:#fffaf0}
.brand-wordmark strong{
  display:block; font-family:Georgia,"Times New Roman",serif; font-size:clamp(1.9rem,3vw,3.1rem);
  letter-spacing:.105em; line-height:1; color:#fffaf0; font-weight:500;
}
.brand-wordmark small{
  display:block; margin-top:10px; color:#d8bd73; letter-spacing:.19em; font-size:.67rem; font-weight:800;
}
.hex-emblem{position:relative;width:58px;height:52px;display:block;color:#d3ae55;flex:none}
.hex-emblem i,.hex-emblem:before,.hex-emblem:after{
  position:absolute; width:25px;height:28px; box-sizing:border-box;
  background:transparent; clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%);
  border:0;
}
.hex-emblem i{background:#d3ae55}
.hex-emblem i:after{content:"";position:absolute;inset:2px;background:#20371f;clip-path:inherit}
.hex-emblem i:nth-child(1){left:0;top:12px}.hex-emblem i:nth-child(2){left:22px;top:0}.hex-emblem i:nth-child(3){left:22px;top:24px}
.nav-bar{background:#fffdf7;border-bottom:1px solid #dfd4bd}
.nav-bar .nav-wrap{min-height:58px;justify-content:center}
.nav-bar .main-nav{gap:22px}
.nav-bar .main-nav a{padding:19px 0 15px;font-size:.73rem;letter-spacing:.06em}
.nav-bar .menu-btn{margin-left:auto}
.brand,.brand-bee{display:none!important}

/* page banners: stronger, cleaner and no repeated honeycomb wallpaper */
.page-hero{
  position:relative; padding:82px 0 58px;
  background:linear-gradient(100deg,#ede1c9 0%,#faf6ec 68%,#fffdf7 100%);
  border-bottom:1px solid #d9c9aa;
}
.page-hero:before{
  content:""; position:absolute; left:0; top:0; bottom:0; width:8px;
  background:linear-gradient(#b68a28,#d6b85c,#b68a28);
}
.page-hero:after{
  content:""; position:absolute; right:5%; top:50%; transform:translateY(-50%) rotate(30deg);
  width:62px; height:70px; opacity:.16;
  background:#b98a20;
  clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%);
}
.honeycomb-corner:after{display:none!important}

/* hero: preserve more of the original portrait photo rather than cropping it hard */
.hero{
  min-height:690px;
  background:#20371f;
}
.hero:before{
  background:
    linear-gradient(90deg,#20371f 0%,#20371f 37%,rgba(32,55,31,.82) 48%,rgba(32,55,31,.18) 70%,rgba(32,55,31,0) 100%),
    url("assets/hero.jpg") right center / auto 100% no-repeat;
}
.hero-content{max-width:640px;padding:110px 0 90px}
.hero-content h1{font-size:clamp(3.2rem,5.5vw,5.5rem)}

/* swarm imagery */
.swarm-collage{display:grid;grid-template-columns:1fr;gap:18px}
.swarm-photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}

/* process photos are portrait-friendly */
.process-card img{object-position:center}

/* Gallery: a little more editorial spacing */
.gallery-grid{column-gap:22px}.gallery-card{margin-bottom:22px}

/* Mobile */
@media(max-width:1050px){
  .brand-masthead:before,.brand-masthead:after{display:none}
  .nav-bar .nav-wrap{justify-content:flex-end}
}
@media(max-width:760px){
  .brand-masthead{min-height:94px;padding:16px 5%}
  .brand-wordmark{gap:13px}
  .brand-wordmark strong{font-size:1.48rem;letter-spacing:.07em}
  .brand-wordmark small{font-size:.5rem;letter-spacing:.11em}
  .hex-emblem{transform:scale(.78);transform-origin:center}
  .hero{min-height:660px}
  .hero:before{
    background:
      linear-gradient(180deg,rgba(32,55,31,.05) 0%,rgba(32,55,31,.18) 42%,rgba(32,55,31,.94) 72%,#20371f 100%),
      url("assets/hero.jpg") center top / 100% auto no-repeat;
  }
  .hero-content{align-self:end;padding:330px 0 48px}
  .hero-content h1{font-size:2.8rem}
  .swarm-photo-grid{grid-template-columns:1fr}
}


/* ===== User refinement: animated bee, full-width hero, compact process/swarm ===== */

.bee-emblem{
  width:70px; height:54px; display:block; flex:none; color:#d3ae55;
}
.flutter-bee{width:70px;height:54px;overflow:visible}
.wing{transform-box:view-box}
.wing-left{transform-origin:79px 58px}
.wing-right{transform-origin:101px 58px}
.wing-left{
  animation:wingLeft .14s ease-in-out 0s 6 alternate;
}
.wing-right{
  animation:wingRight .14s ease-in-out 0s 6 alternate;
}
@keyframes wingLeft{
  from{transform:rotate(0deg)}
  to{transform:rotate(-24deg)}
}
@keyframes wingRight{
  from{transform:rotate(0deg)}
  to{transform:rotate(24deg)}
}
@media (prefers-reduced-motion:reduce){
  .wing-left,.wing-right{animation:none}
}

/* Full-width hero photo as in the earlier draft. Taller desktop hero reveals more foliage. */
.hero{
  min-height:820px;
  background:#20371f;
}
.hero:before{
  background:
    linear-gradient(90deg,rgba(20,36,19,.78) 0%,rgba(20,36,19,.48) 42%,rgba(20,36,19,.12) 70%,rgba(20,36,19,.06) 100%),
    url("assets/hero.jpg") center 45% / cover no-repeat !important;
}
.hero-content{padding:130px 0 100px;max-width:700px}

/* Award image should show the whole trophy and jars rather than cropping tightly. */
.award-block .image-card.tall img{
  aspect-ratio:auto;
  width:100%;
  height:auto;
  object-fit:contain;
  background:#f5efe3;
}
.award-block .image-card.tall{background:#f5efe3}

/* Three named queens */
.queen-grid.three{grid-template-columns:repeat(3,1fr)}
.queen-grid.three .queen-card img{aspect-ratio:1/1;object-fit:cover}

/* Hive-to-jar condensed to three cards */
.compact-process{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}
.compact-process .process-card{
  display:block;
  background:#fff;
  border:1px solid var(--line);
  border-radius:14px;
  overflow:hidden;
}
.compact-process .process-card img{
  width:100%;
  height:290px;
  object-fit:cover;
}
.compact-process .process-card>div{padding:22px}
.compact-process .process-card h2{font-size:1.7rem}
.compact-process .process-card p{font-size:.94rem}

/* Smaller swarm photos */
.compact-swarm{
  grid-template-columns:repeat(2,1fr);
  gap:14px;
  max-width:640px;
  margin-left:auto;
}
.compact-swarm .image-card img{
  aspect-ratio:4/3;
  height:220px;
  object-fit:cover;
}

@media(max-width:900px){
  .queen-grid.three,.compact-process{grid-template-columns:1fr}
  .hero{min-height:720px}
  .compact-swarm{max-width:none;margin:0}
}
@media(max-width:760px){
  .brand-wordmark strong{font-size:1.55rem}
  .bee-emblem,.flutter-bee{width:56px;height:44px}
  .hero{
    min-height:720px;
  }
  .hero:before{
    background:
      linear-gradient(180deg,rgba(20,36,19,.08) 0%,rgba(20,36,19,.24) 45%,rgba(20,36,19,.92) 77%,#20371f 100%),
      url("assets/hero.jpg") center 34% / cover no-repeat !important;
  }
  .hero-content{padding:380px 0 50px}
  .compact-swarm{grid-template-columns:1fr 1fr}
  .compact-swarm .image-card img{height:155px}
}


/* ===== Header refinement based on Swann's Garden business card ===== */
.brand-masthead:before,
.brand-masthead:after{
  content:"" !important;
  position:absolute !important;
  top:0 !important;
  bottom:auto !important;
  width:210px !important;
  height:100% !important;
  background:none !important;
  opacity:.95;
  pointer-events:none;
  transform:none !important;
}

/* Layered gold hexagons at both ends, inspired by the business card.
   They stay decorative and away from the wordmark/bee animation. */
.brand-masthead:before{
  left:0 !important;
  background:
    linear-gradient(30deg, transparent 24%, #d7b451 25%, #d7b451 27%, transparent 28%, transparent 72%, #d7b451 73%, #d7b451 75%, transparent 76%) 0 0/58px 100px,
    linear-gradient(150deg, transparent 24%, #d7b451 25%, #d7b451 27%, transparent 28%, transparent 72%, #d7b451 73%, #d7b451 75%, transparent 76%) 0 0/58px 100px;
  -webkit-mask-image:linear-gradient(90deg,#000 0%,#000 58%,transparent 100%);
  mask-image:linear-gradient(90deg,#000 0%,#000 58%,transparent 100%);
}
.brand-masthead:after{
  right:0 !important;
  background:
    linear-gradient(30deg, transparent 24%, #d7b451 25%, #d7b451 27%, transparent 28%, transparent 72%, #d7b451 73%, #d7b451 75%, transparent 76%) 0 0/58px 100px,
    linear-gradient(150deg, transparent 24%, #d7b451 25%, #d7b451 27%, transparent 28%, transparent 72%, #d7b451 73%, #d7b451 75%, transparent 76%) 0 0/58px 100px;
  -webkit-mask-image:linear-gradient(270deg,#000 0%,#000 58%,transparent 100%);
  mask-image:linear-gradient(270deg,#000 0%,#000 58%,transparent 100%);
}

/* Keep the central branding clear and prominent */
.brand-wordmark{position:relative;z-index:2}
@media(max-width:900px){
  .brand-masthead:before,.brand-masthead:after{width:110px !important;opacity:.55}
}
@media(max-width:600px){
  .brand-masthead:before,.brand-masthead:after{width:72px !important;opacity:.38}
}

/* Remove legacy/random decorative hexagons from content pages only */
.page-process .hex, .page-process .hexagon, .page-process .honeycomb-piece, .page-process .comb-piece, .page-process .floating-comb,
.page-swarm .hex, .page-swarm .hexagon, .page-swarm .honeycomb-piece, .page-swarm .comb-piece, .page-swarm .floating-comb,
.page-journal .hex, .page-journal .hexagon, .page-journal .honeycomb-piece, .page-journal .comb-piece, .page-journal .floating-comb {
  display:none !important;
}


/* ===== Business-card honeycomb framing: FINAL HEADER TREATMENT ===== */
.brand-masthead{
  position:relative;
  overflow:hidden;
}

/* Remove prior line/hex pseudo treatments and redraw with clear connected honeycomb cells */
.brand-masthead::before,
.brand-masthead::after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  width:260px;
  pointer-events:none;
  opacity:.92;
  background-repeat:no-repeat;
  background-size:260px 118px;
}

/* Left honeycomb */
.brand-masthead::before{
  left:0;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='118' viewBox='0 0 260 118'%3E%3Cg fill='none' stroke='%23d8b24f' stroke-width='2.4' opacity='.98'%3E%3Cpolygon points='12,18 28,9 44,18 44,36 28,45 12,36'/%3E%3Cpolygon points='44,36 60,27 76,36 76,54 60,63 44,54'/%3E%3Cpolygon points='76,18 92,9 108,18 108,36 92,45 76,36'/%3E%3Cpolygon points='108,36 124,27 140,36 140,54 124,63 108,54'/%3E%3Cpolygon points='28,54 44,45 60,54 60,72 44,81 28,72'/%3E%3Cpolygon points='60,72 76,63 92,72 92,90 76,99 60,90'/%3E%3Cpolygon points='92,54 108,45 124,54 124,72 108,81 92,72'/%3E%3C/g%3E%3C/svg%3E");
  -webkit-mask-image:linear-gradient(90deg,#000 0%,#000 58%,rgba(0,0,0,.55) 78%,transparent 100%);
  mask-image:linear-gradient(90deg,#000 0%,#000 58%,rgba(0,0,0,.55) 78%,transparent 100%);
}

/* Right honeycomb: mirrored */
.brand-masthead::after{
  right:0;
  transform:scaleX(-1);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='118' viewBox='0 0 260 118'%3E%3Cg fill='none' stroke='%23d8b24f' stroke-width='2.4' opacity='.98'%3E%3Cpolygon points='12,18 28,9 44,18 44,36 28,45 12,36'/%3E%3Cpolygon points='44,36 60,27 76,36 76,54 60,63 44,54'/%3E%3Cpolygon points='76,18 92,9 108,18 108,36 92,45 76,36'/%3E%3Cpolygon points='108,36 124,27 140,36 140,54 124,63 108,54'/%3E%3Cpolygon points='28,54 44,45 60,54 60,72 44,81 28,72'/%3E%3Cpolygon points='60,72 76,63 92,72 92,90 76,99 60,90'/%3E%3Cpolygon points='92,54 108,45 124,54 124,72 108,81 92,72'/%3E%3C/g%3E%3C/svg%3E");
  -webkit-mask-image:linear-gradient(90deg,#000 0%,#000 58%,rgba(0,0,0,.55) 78%,transparent 100%);
  mask-image:linear-gradient(90deg,#000 0%,#000 58%,rgba(0,0,0,.55) 78%,transparent 100%);
}

/* Keep the animated bee and wordmark clear above the decoration */
.brand-wordmark{
  position:relative;
  z-index:3;
}

/* Responsive: retain the effect without crowding the branding */
@media(max-width:900px){
  .brand-masthead::before,
  .brand-masthead::after{
    width:145px;
    background-size:180px 82px;
    opacity:.72;
  }
}
@media(max-width:600px){
  .brand-masthead::before,
  .brand-masthead::after{
    width:82px;
    background-size:130px 60px;
    opacity:.48;
  }
}


/* ===== v5: reliable business-card honeycomb header ===== */
.brand-masthead::before,
.brand-masthead::after{
  display:none !important;
  content:none !important;
}

.brand-masthead{
  position:relative !important;
  overflow:hidden !important;
}

.header-comb{
  position:absolute;
  top:50%;
  width:245px;
  height:108px;
  transform:translateY(-50%);
  color:#d7b451;
  opacity:.95;
  z-index:1;
  pointer-events:none;
}
.header-comb svg{
  width:100%;
  height:100%;
  display:block;
}
.header-comb-left{left:0;}
.header-comb-right{
  right:0;
  transform:translateY(-50%) scaleX(-1);
}
.brand-wordmark{
  position:relative;
  z-index:3;
}

/* Keep the honeycomb visible on laptop/tablet sizes rather than hiding it. */
@media(max-width:1050px){
  .header-comb{width:165px;height:90px;opacity:.78;}
}
@media(max-width:700px){
  .header-comb{width:90px;height:72px;opacity:.48;}
}

/* Confirm the agreed homepage hero remains the full-width bees-entering-hive image. */
.hero{
  min-height:820px !important;
  background:#20371f !important;
}
.hero::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  background:
    linear-gradient(90deg,rgba(20,36,19,.76) 0%,rgba(20,36,19,.45) 42%,rgba(20,36,19,.10) 72%,rgba(20,36,19,.03) 100%),
    url("assets/hero.jpg") center 45% / cover no-repeat !important;
}


/* ===== v6: remove all stray content-page hexagon decoration ===== */
.page-hero::after,
.page-hero:after,
.honeycomb-corner::after,
.honeycomb-corner:after,
.hex,
.hexagon,
.honeycomb-piece,
.comb-piece,
.floating-comb,
.decorative-hex,
.hex-shadow{
  display:none !important;
  content:none !important;
  box-shadow:none !important;
  filter:none !important;
}

/* ===== v6 header honeycomb: one larger hexagonal cluster made from small cells ===== */
.header-comb{
  position:absolute !important;
  top:50% !important;
  width:190px !important;
  height:160px !important;
  transform:translateY(-50%) !important;
  color:#d7b451 !important;
  opacity:.95 !important;
  z-index:1 !important;
  pointer-events:none !important;
}
.header-comb svg{
  display:block !important;
  width:100% !important;
  height:100% !important;
  overflow:visible !important;
}
.header-comb-left{left:12px !important;}
.header-comb-right{
  right:12px !important;
  transform:translateY(-50%) scaleX(-1) !important;
}
@media(max-width:1050px){
  .header-comb{width:132px !important;height:112px !important;opacity:.72 !important;}
}
@media(max-width:700px){
  .header-comb{width:72px !important;height:62px !important;opacity:.42 !important;}
}


/* ===== v7: reliable mobile menu ===== */
@media(max-width:1050px){
  .nav-bar .main-nav{
    display:none !important;
    position:absolute !important;
    top:100% !important;
    left:0 !important;
    right:0 !important;
    z-index:100 !important;
    background:#fffdf7 !important;
    border-top:1px solid var(--line) !important;
    border-bottom:1px solid var(--line) !important;
    padding:10px 5% 16px !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:0 !important;
    box-shadow:0 12px 24px rgba(31,50,31,.12) !important;
  }
  .nav-bar .main-nav.open{display:flex !important;}
  .nav-bar .main-nav a{
    display:block !important;
    width:100% !important;
    padding:12px 0 !important;
    border-bottom:1px solid rgba(185,138,32,.16) !important;
  }
  .nav-bar .main-nav a:last-child{border-bottom:0 !important;}
  .nav-bar .nav-wrap{position:relative !important;}
  .menu-btn{display:block !important;cursor:pointer !important;}
}

.hive-name{
  margin:-.15rem 0 .8rem;
  color:var(--gold);
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:.75rem;
}


/* ===== v8: native mobile navigation (no JavaScript dependency) ===== */
.desktop-nav{
  display:flex;
  gap:19px;
  align-items:center;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.04em;
}
.desktop-nav a{
  padding:19px 0 15px;
  border-bottom:2px solid transparent;
}
.desktop-nav a:hover{border-color:var(--gold)}

.mobile-menu-native{display:none}

@media(max-width:1050px){
  .desktop-nav{display:none !important}
  .mobile-menu-native{
    display:block !important;
    margin-left:auto;
    position:relative;
  }
  .mobile-menu-native summary{
    list-style:none;
    cursor:pointer;
    border:1px solid var(--line);
    padding:10px 14px;
    border-radius:4px;
    font-size:.78rem;
    font-weight:800;
    letter-spacing:.06em;
    color:var(--ink);
    background:#fffdf7;
  }
  .mobile-menu-native summary::-webkit-details-marker{display:none}
  .mobile-menu-native[open] summary{background:#f1e7d2}
  .mobile-nav-links{
    position:absolute;
    right:0;
    top:calc(100% + 9px);
    width:min(86vw,340px);
    background:#fffdf7;
    border:1px solid var(--line);
    box-shadow:0 14px 30px rgba(31,50,31,.16);
    z-index:200;
    padding:8px 16px 12px;
    display:flex;
    flex-direction:column;
  }
  .mobile-nav-links a{
    display:block;
    padding:12px 2px;
    border-bottom:1px solid rgba(185,138,32,.18);
    font-size:.78rem;
    font-weight:800;
    letter-spacing:.04em;
  }
  .mobile-nav-links a:last-child{border-bottom:0}
  .nav-bar .nav-wrap{
    min-height:58px;
    position:relative;
    justify-content:flex-end;
  }
}

/* ===== v8: clearly visible bee wing flutter ===== */
.wing-left{
  animation:wingLeft .16s ease-in-out .55s 8 alternate !important;
}
.wing-right{
  animation:wingRight .16s ease-in-out .55s 8 alternate !important;
}
/* User specifically wants this visual effect on page open. */
@media (prefers-reduced-motion:reduce){
  .wing-left{animation:wingLeft .16s ease-in-out .55s 8 alternate !important}
  .wing-right{animation:wingRight .16s ease-in-out .55s 8 alternate !important}
}


/* ===== v9: mobile dropdown visibility fix =====
   An older .site-header { overflow:hidden } rule was clipping the menu.
   Keep the masthead itself clipped for decoration, but let the dropdown
   extend below the header. */
.site-header{
  overflow:visible !important;
}
.brand-masthead{
  overflow:hidden !important;
}
.nav-bar,
.nav-bar .nav-wrap,
.mobile-menu-native{
  overflow:visible !important;
}
@media(max-width:1050px){
  .mobile-menu-native[open] .mobile-nav-links{
    display:flex !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
  }
}


/* ===== Agreed selective photographic heroes ===== */
.swarm-photo-hero,
.shop-photo-hero{
  position:relative;
  min-height:330px;
  overflow:hidden;
  display:flex;
  align-items:flex-end;
  background:#20371f;
}
.swarm-photo-hero-img,
.shop-photo-hero-img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.swarm-photo-hero-img{object-position:center 44%;}
.shop-photo-hero-img{object-position:center;}
.swarm-photo-hero-shade,
.shop-photo-hero-shade{
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(20,35,19,.72) 0%,rgba(20,35,19,.34) 42%,rgba(20,35,19,.05) 72%);
}
.swarm-photo-hero-copy,
.shop-photo-hero-copy{
  position:relative;
  z-index:2;
  padding-top:100px;
  padding-bottom:38px;
  color:#fffaf0;
}
.swarm-photo-hero-copy .eyebrow,
.shop-photo-hero-copy .eyebrow{color:#e0bd62}
.swarm-photo-hero-copy h1,
.shop-photo-hero-copy h1{
  color:#fffaf0;
  max-width:620px;
  margin:.2rem 0 0;
  text-shadow:0 2px 12px rgba(0,0,0,.35);
}
@media(max-width:760px){
  .swarm-photo-hero,.shop-photo-hero{min-height:245px}
  .swarm-photo-hero-copy,.shop-photo-hero-copy{padding-top:72px;padding-bottom:28px}
  .swarm-photo-hero-img{object-position:58% center}
}

/* Product photo framing: show the three honey jars slightly more zoomed out without affecting beeswax */
.product-grid .product-card:nth-child(-n+3)>img{
  object-fit:contain;
  object-position:center;
  padding:14px;
  background:#fff;
}


/* V9 shop-only update: lifestyle banner; all product cards and other pages unchanged */
.shop-lifestyle-banner{width:100%;background:#f5ead6;overflow:hidden;line-height:0}
.shop-lifestyle-banner img{display:block;width:100%;height:auto;margin:0}
@media(max-width:760px){
  .shop-lifestyle-banner{overflow:hidden}
  .shop-lifestyle-banner img{width:100%;height:auto;object-fit:contain}
}

/* ===== v9 SumUp ordering integration ===== */
.quantity-picker{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
.quantity-picker label{display:block;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:#6f624f;margin-bottom:8px}
.quantity-picker small{display:block;margin-top:8px;color:#756b5f;font-size:.75rem;line-height:1.4}
.qty-control{display:inline-grid;grid-template-columns:38px 54px 38px;border:1px solid #d5c9b3;border-radius:5px;overflow:hidden;background:#fff}
.qty-control button{border:0;background:#f4eee1;font-size:1.2rem;cursor:pointer;color:var(--ink)}
.qty-control button:hover{background:#ece1cd}.qty-control input{width:54px;border:0;border-left:1px solid #ddd1bc;border-right:1px solid #ddd1bc;text-align:center;font-weight:700;font-size:1rem;color:var(--ink);appearance:textfield}
.qty-control input::-webkit-outer-spin-button,.qty-control input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.checkout-section{background:#f5efe3;border-top:1px solid var(--line)}
.checkout-heading{max-width:720px;margin-bottom:28px}.checkout-heading h2{font-size:clamp(2.3rem,4vw,3.7rem);margin-bottom:8px}
.checkout-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);gap:28px;align-items:start}
.order-form fieldset{border:0;padding:0;margin:0 0 28px}.order-form legend{font:500 1.65rem Georgia,serif;color:var(--ink);margin-bottom:14px}
.delivery-options{display:grid;gap:10px}.delivery-choice{display:grid;grid-template-columns:auto 1fr auto;gap:13px;align-items:center;padding:17px;background:#fff;border:1px solid var(--line);border-radius:9px;cursor:pointer}.delivery-choice:has(input:checked){border-color:#aa842b;box-shadow:0 0 0 1px #aa842b}.delivery-choice input{accent-color:#183b2b;width:18px;height:18px}.delivery-choice span{display:grid;gap:3px}.delivery-choice strong{font-size:.96rem}.delivery-choice small{color:#72675a;line-height:1.35}.delivery-choice b{font-size:.82rem;color:#806318}
.customer-fields{background:#fff;border:1px solid var(--line)!important;border-radius:11px;padding:22px!important}.customer-fields legend{padding:0 4px}.customer-fields label{display:grid;gap:7px;font-size:.78rem;font-weight:800;letter-spacing:.04em;color:#5e5347}.customer-fields label span{font-weight:400;color:#887e71}.customer-fields input,.customer-fields textarea{width:100%;padding:12px 13px;border:1px solid #d5c9b3;border-radius:5px;background:#fff;font:inherit;font-size:.95rem;color:var(--ink)}.customer-fields textarea{resize:vertical;min-height:96px}.customer-fields input:focus,.customer-fields textarea:focus{outline:2px solid rgba(185,138,32,.25);border-color:#a8822a}.order-notes{margin-top:14px}.field-grid{display:grid;gap:14px}.field-grid.two{grid-template-columns:1fr 1fr}.address-fields{display:grid;gap:14px;margin-top:14px}.address-fields[hidden]{display:none}
.order-summary{position:sticky;top:150px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px;box-shadow:0 13px 32px rgba(43,35,18,.08)}.order-summary h3{font-size:1.8rem;margin-bottom:16px}.summary-items{padding-bottom:14px;margin-bottom:13px;border-bottom:1px solid var(--line)}.summary-item,.summary-row,.summary-total{display:flex;justify-content:space-between;gap:15px;align-items:baseline}.summary-item{font-size:.88rem;margin:8px 0}.summary-row{font-size:.88rem;margin:9px 0}.summary-total{border-top:1px solid var(--line);padding-top:15px;margin-top:15px;font:600 1.2rem Georgia,serif}.summary-total strong{font-size:1.55rem}.empty-basket{color:#82776b;font-style:italic;font-size:.9rem}.checkout-button{width:100%;border:0;margin-top:20px;cursor:pointer}.checkout-button:disabled{opacity:.45;cursor:not-allowed}.secure-note{font-size:.75rem;color:#71675c;line-height:1.5;margin:12px 0 0}.order-error{padding:12px 14px;background:#f8e9e5;border-left:4px solid #a94835;color:#713124;margin:0 0 15px}.large-order-note{font-size:.88rem;padding:13px 15px;background:#eee4d1;border-left:4px solid var(--gold)}.large-order-note a{text-decoration:underline;font-weight:700}
@media(max-width:850px){.checkout-layout{grid-template-columns:1fr}.order-summary{position:static}.field-grid.two{grid-template-columns:1fr}}
@media(max-width:560px){.delivery-choice{grid-template-columns:auto 1fr}.delivery-choice b{grid-column:2}.customer-fields{padding:17px!important}.checkout-section{padding-top:46px}}


/* Shop banner refinement */
.shop-hero,
.shop-banner,
.page-hero.shop-hero,
.hero.shop-hero {
  max-height: 290px;
  overflow: hidden;
}

.shop-hero img,
.shop-banner img,
.page-hero.shop-hero img,
.hero.shop-hero img {
  width: 100%;
  height: 290px;
  object-fit: cover;
  object-position: center 58%;
  display: block;
}

@media (max-width: 700px) {
  .shop-hero,
  .shop-banner,
  .page-hero.shop-hero,
  .hero.shop-hero {
    max-height: 340px;
  }

  .shop-hero img,
  .shop-banner img,
  .page-hero.shop-hero img,
  .hero.shop-hero img {
    height: 340px;
    object-position: center 55%;
  }
}

.parcel-message {
  display: none;
  margin: 18px 0;
  padding: 14px 16px;
  border: 1px solid rgba(117, 88, 31, 0.35);
  background: rgba(247, 241, 224, 0.75);
  border-radius: 10px;
  font-size: 0.95rem;
  line-height: 1.45;
}

.parcel-message.show {
  display: block;
}


/* v10 final shop hero: split layout to match internal pages */
.shop-split-hero{display:grid;grid-template-columns:minmax(0,42%) minmax(0,58%);min-height:285px;background:#f5ead6;border-bottom:1px solid var(--line)}
.shop-split-copy{display:flex;align-items:center;padding:42px max(28px,calc((100vw - 1180px)/2));padding-right:34px}
.shop-split-copy>div{max-width:430px}
.shop-split-copy .eyebrow{margin-bottom:8px}
.shop-split-copy h1{font-size:clamp(2.7rem,5vw,4.6rem);margin:0 0 12px;color:var(--ink)}
.shop-split-copy p:last-child{margin:0;font-size:1.02rem;line-height:1.55;color:#665b4e}
.shop-split-image{min-height:285px;overflow:hidden;background:#f5ead6;display:flex;align-items:stretch;justify-content:center}
.shop-split-image img{width:100%;height:100%;min-height:285px;display:block;object-fit:cover;object-position:center;-webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.3) 10%,#000 27%,#000 100%);mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.3) 10%,#000 27%,#000 100%)}
@media(max-width:760px){
 .shop-split-hero{grid-template-columns:42% 58%;min-height:190px}
 .shop-split-copy{padding:24px 14px 24px 20px}
 .shop-split-copy .eyebrow{font-size:.62rem}
 .shop-split-copy h1{font-size:clamp(2rem,8vw,3rem);margin-bottom:7px}
 .shop-split-copy p:last-child{font-size:.78rem;line-height:1.4}
 .shop-split-image{min-height:190px}
 .shop-split-image img{width:100%;height:100%;min-height:190px;object-fit:cover;object-position:center;-webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.35) 10%,#000 30%,#000 100%);mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.35) 10%,#000 30%,#000 100%)}
}

/* Checkout notes */
.order-notes{display:block;margin-top:16px}
.order-notes span{font-weight:400;opacity:.7}
.order-notes textarea{width:100%;box-sizing:border-box;margin-top:7px;padding:12px 14px;border:1px solid rgba(44,55,31,.22);border-radius:6px;background:#fff;font:inherit;color:inherit;resize:vertical;min-height:86px}
.order-notes textarea:focus{outline:2px solid rgba(174,135,52,.28);border-color:#ae8734}

/* v10 photo corrections */
.trophy-card{background:#eee4cf;display:flex;align-items:center;justify-content:center}
.trophy-card img{
  object-fit:cover !important;
  object-position:center 78% !important;
  transform:scale(.90);
  transform-origin:center center;
  border-radius:10px;
}
.shop-split-image img{
  object-position:center 58% !important;
}

/* Genuine final Shop banner — isolated from all previous hero experiments */
.shop-genuine-hero{
  position:relative;
  height:245px;
  min-height:245px;
  max-height:245px;
  overflow:hidden;
  background:#f5ead6;
  border-bottom:1px solid var(--line);
}
.shop-genuine-hero-image{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  display:block;
}
.shop-genuine-hero-copy{
  position:relative;
  z-index:2;
  width:42%;
  height:100%;
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:24px max(28px,calc((100vw - 1180px)/2));
  padding-right:24px;
}
.shop-genuine-hero-copy .eyebrow{margin:0 0 7px}
.shop-genuine-hero-copy h1{margin:0 0 10px;font-size:clamp(2.7rem,4.8vw,4.5rem)}
.shop-genuine-hero-copy p:last-child{margin:0;line-height:1.5;color:#665b4e}
@media(max-width:760px){
  .shop-genuine-hero{
    height:190px;
    min-height:190px;
    max-height:190px;
  }
  .shop-genuine-hero-copy{
    width:46%;
    padding:16px 10px 16px 18px;
  }
  .shop-genuine-hero-copy .eyebrow{font-size:.62rem}
  .shop-genuine-hero-copy h1{font-size:clamp(2rem,8vw,3rem);margin-bottom:6px}
  .shop-genuine-hero-copy p:last-child{font-size:.78rem;line-height:1.35}
}

/* Mobile-only Shop hero fix:
   use genuine cropped lifestyle photograph on right, with cream fade for text.
   Desktop hero remains unchanged. */
@media(max-width:760px){
  .shop-genuine-hero{
    position:relative !important;
    height:210px !important;
    min-height:210px !important;
    max-height:210px !important;
    overflow:hidden !important;
    background:#f5ead6 !important;
  }

  .shop-genuine-hero-image{
    display:none !important;
  }

  .shop-genuine-hero::before{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    background-image:url("assets/shop-banner-mobile-real.jpg") !important;
    background-repeat:no-repeat !important;
    background-position:right center !important;
    background-size:auto 100% !important;
    z-index:0 !important;
  }

  .shop-genuine-hero::after{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    background:linear-gradient(
      to right,
      #f5ead6 0%,
      #f5ead6 48%,
      rgba(245,234,214,.96) 55%,
      rgba(245,234,214,.76) 64%,
      rgba(245,234,214,.38) 74%,
      rgba(245,234,214,0) 84%
    ) !important;
    z-index:1 !important;
    pointer-events:none !important;
  }

  .shop-genuine-hero-copy{
    position:relative !important;
    z-index:2 !important;
    width:58% !important;
    height:100% !important;
    padding:18px 10px 18px 18px !important;
    box-sizing:border-box !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
  }

  .shop-genuine-hero-copy .eyebrow{
    font-size:.62rem !important;
    margin:0 0 6px !important;
  }

  .shop-genuine-hero-copy h1{
    font-size:clamp(2.15rem,11vw,3.1rem) !important;
    line-height:1 !important;
    margin:0 0 9px !important;
  }

  .shop-genuine-hero-copy p:last-child{
    margin:0 !important;
    font-size:.82rem !important;
    line-height:1.4 !important;
    max-width:210px !important;
  }
}

/* FINAL MOBILE-ONLY SHOP HERO OVERRIDE — desktop Shop banner unchanged */
@media (max-width:760px){
  .shop-genuine-hero{
    height:220px !important;
    min-height:220px !important;
    max-height:220px !important;
    overflow:hidden !important;
    background:#f5ead6 !important;
  }
  .shop-genuine-hero::before{
    background-image:url("assets/shop-banner-real-jars.jpg") !important;
    background-repeat:no-repeat !important;
    background-size:54% auto !important;
    background-position:right center !important;
  }
  .shop-genuine-hero::after{
    background:linear-gradient(to right,
      #f5ead6 0%,
      #f5ead6 48%,
      rgba(245,234,214,.98) 53%,
      rgba(245,234,214,.82) 60%,
      rgba(245,234,214,.42) 68%,
      rgba(245,234,214,0) 76%) !important;
  }
  .shop-genuine-hero-copy{
    width:58% !important;
    padding:16px 8px 16px 18px !important;
  }
  .shop-genuine-hero-copy h1{
    font-size:2.55rem !important;
    white-space:nowrap !important;
  }
  .shop-genuine-hero-copy p:last-child{
    font-size:.78rem !important;
    line-height:1.35 !important;
  }
}

/* Keep checkout/contact fieldset headings such as "Your details"
   inside their rounded box on desktop and mobile. */
fieldset,
.form-section,
.checkout-section,
.customer-details,
.details-box{
  position:relative !important;
  overflow:visible;
}
fieldset legend{
  float:none !important;
  width:auto !important;
  max-width:calc(100% - 28px) !important;
  margin:0 0 10px 12px !important;
  padding:0 8px !important;
  position:relative !important;
  top:0 !important;
  left:0 !important;
  transform:none !important;
  background:inherit !important;
  line-height:1.3 !important;
}
@media (max-width:760px){
  fieldset legend{
    margin-left:8px !important;
    max-width:calc(100% - 20px) !important;
  }
}

/* Additional checkout heading containment */
.checkout-form h2,
.checkout-form h3,
.order-form h2,
.order-form h3{
  position:static !important;
  transform:none !important;
  margin-top:0 !important;
}

/* Customer details box without redundant legend */
.customer-fields{
  padding-top:24px !important;
}
@media(max-width:760px){
  .customer-fields{
    padding-top:20px !important;
  }
}

/* Final trophy display fix: preserve the complete original trophy photograph */
.trophy-card{
  background:#eee4cf !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.trophy-card img{
  width:100% !important;
  aspect-ratio:4/3 !important;
  object-fit:contain !important;
  object-position:center center !important;
  transform:none !important;
  border-radius:10px !important;
  background:#eee4cf !important;
}
@media(max-width:760px){
  .trophy-card img{
    object-fit:contain !important;
    object-position:center center !important;
    transform:none !important;
  }
}

/* Gallery consistency: all Meet the Bees images use the same card size */
.gallery-grid figure,
.gallery-grid .gallery-card{
  overflow:hidden !important;
}
.gallery-grid figure img,
.gallery-grid .gallery-card img{
  width:100% !important;
  height:260px !important;
  aspect-ratio:auto !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
  transform:none !important;
}
@media(max-width:760px){
  .gallery-grid figure img,
  .gallery-grid .gallery-card img{
    height:220px !important;
  }
}

/* Exact fix for final colourful pollen Gallery card */
.gallery-grid > figure.gallery-card{
  margin:0 !important;
  width:auto !important;
  max-width:none !important;
  min-width:0 !important;
}
.gallery-grid > figure.gallery-card img[src$="gallery-pollen-frame.jpg"]{
  display:block !important;
  width:100% !important;
  height:260px !important;
  max-width:100% !important;
  max-height:260px !important;
  min-height:260px !important;
  object-fit:cover !important;
  object-position:center center !important;
  aspect-ratio:auto !important;
  transform:none !important;
  margin:0 !important;
}
@media(max-width:760px){
  .gallery-grid > figure.gallery-card img[src$="gallery-pollen-frame.jpg"]{
    height:220px !important;
    min-height:220px !important;
    max-height:220px !important;
  }
}

/* Final Gallery framing: zoom out these two images only */
.gallery-grid img[src$="gallery-busy-bees.jpg"],
.gallery-grid img[src$="gallery-pollen-return.jpg"]{
  object-fit:contain !important;
  object-position:center center !important;
  background:#eee4cf !important;
}

/* SumUp return / Thank You page */
.thank-you-card{
  max-width:760px;
  margin:48px auto;
  padding:42px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:18px;
  box-shadow:0 10px 28px rgba(42,35,24,.07);
  text-align:center;
}
.thank-you-card h1{margin:.2em 0 .35em}
.thank-you-lead{font-size:1.12rem}
.thank-you-actions{
  display:flex;
  gap:14px;
  justify-content:center;
  flex-wrap:wrap;
  margin-top:28px;
}
@media(max-width:760px){
  .thank-you-card{
    margin:28px auto;
    padding:28px 20px;
  }
  .thank-you-actions{
    flex-direction:column;
  }
  .thank-you-actions .button{
    width:100%;
    box-sizing:border-box;
    text-align:center;
  }
}
