

:root { --ink:#163b2c; --green:#2f6f3e; --deep:#0b3526; --lime:#b9d84a; --cream:#f2f5e7; --paper:#fbfcf7; --orange:#268ec4; --blue:#b7e1f1; --line:rgba(22,59,44,.18); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Arial,Helvetica,sans-serif; }
a { color:inherit; text-decoration:none; }
img { max-width:100%; }
main { overflow:hidden; }
.site-header { height:86px; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:2rem; padding:0 4vw; border-bottom:1px solid var(--line); background:rgba(251,250,245,.94); position:sticky; top:0; z-index:50; backdrop-filter:blur(16px); }
.brand { display:inline-flex; align-items:center; gap:.7rem; width:max-content; }
.brand-mark { width:40px; height:40px; display:grid; place-items:center; border-radius:50%; color:var(--lime); background:var(--green); font:italic 700 25px/1 Georgia,serif; }
.brand strong,.brand small { display:block; letter-spacing:.14em; line-height:1.1; }
.brand strong { font-size:15px; }
.brand small { font-size:8px; margin-top:4px; }
.site-header nav { display:flex; gap:2rem; font-size:13px; font-weight:700; }
.site-header nav a { position:relative; padding:.5rem 0; }
.site-header nav a:after { content:""; position:absolute; left:0; bottom:0; width:0; height:2px; background:var(--green); transition:.25s; }
.site-header nav a:hover:after { width:100%; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:2.5rem; min-height:54px; padding:0 22px; color:#fff; background:var(--green); font-size:12px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; transition:.2s; }
.button:hover { background:var(--deep); transform:translateY(-2px); }
.button span { font-size:18px; }
.button-small { min-height:42px; justify-self:end; gap:1.2rem; }
.button-light { background:var(--lime); color:var(--deep); }
.button-light:hover { background:#fff; color:var(--deep); }
.text-link { font-size:13px; font-weight:800; border-bottom:1px solid var(--ink); padding:.85rem 0; }
.text-link span { margin-left:1rem; }
.eyebrow { display:block; text-transform:uppercase; letter-spacing:.18em; font-size:10px; font-weight:800; }
.eyebrow:before { content:""; display:inline-block; width:25px; height:2px; margin:0 10px 3px 0; background:var(--orange); }
.eyebrow.light { color:#fff; }
.eyebrow.light:before { background:var(--lime); }
.hero { min-height:calc(100vh - 86px); display:grid; grid-template-columns:.95fr 1.05fr; align-items:center; padding:6vw 4vw 4vw; background:radial-gradient(circle at 86% 30%,rgba(198,240,78,.17),transparent 28%),var(--paper); }
.hero-copy { padding-left:4vw; position:relative; z-index:2; }
.hero h1,.page-hero h1 { margin:2rem 0 1.5rem; font:400 clamp(54px,6.2vw,100px)/.91 Georgia,serif; letter-spacing:-.06em; }
.hero h1 em,.page-hero h1 em { color:var(--green); font-weight:400; }
.hero-copy>p { max-width:590px; font-size:17px; line-height:1.7; color:#45675d; }
.button-row { display:flex; align-items:center; gap:2rem; margin-top:2.5rem; }
.hero-visual { position:relative; min-height:560px; display:flex; align-items:center; justify-content:center; }
.hero-visual img { position:relative; z-index:2; width:110%; max-width:none; filter:drop-shadow(0 30px 28px rgba(17,55,43,.18)); }
.hero-orbit { position:absolute; width:76%; aspect-ratio:1; border-radius:50%; background:var(--lime); top:5%; right:4%; }
.hero-orbit:before,.hero-orbit:after { content:""; position:absolute; inset:9%; border:1px solid rgba(18,55,44,.23); border-radius:50%; }
.hero-orbit:after { inset:22%; }
.hero-label { position:absolute; z-index:3; right:3%; bottom:12%; writing-mode:vertical-rl; text-transform:uppercase; letter-spacing:.2em; font-size:9px; font-weight:800; }
.proof-strip { display:grid; grid-template-columns:repeat(4,1fr); margin:0 4vw; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.proof-strip div { display:flex; gap:1.3rem; align-items:center; padding:1.6rem; border-right:1px solid var(--line); }
.proof-strip div:last-child { border:0; }
.proof-strip strong { color:var(--orange); font:italic 26px Georgia,serif; }
.proof-strip span { font-size:10px; line-height:1.35; text-transform:uppercase; letter-spacing:.14em; font-weight:800; }
.section { padding:9vw 8vw; }
.products-intro { display:grid; grid-template-columns:1.2fr .8fr; align-items:end; gap:9vw; }
.section h2,.manufacturing-overlay h2,.footer-lead h2 { margin:1.5rem 0 0; font:400 clamp(44px,5.2vw,84px)/.98 Georgia,serif; letter-spacing:-.045em; }
.section-copy { line-height:1.8; color:#516c64; margin:0; }
.product-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--ink); margin:0 4vw 8vw; border:1px solid var(--ink); }
.product-card { position:relative; min-height:500px; overflow:hidden; display:flex; align-items:flex-end; background:var(--cream); isolation:isolate; }
.product-card-wide { grid-column:span 2; }
.product-card img { position:absolute; inset:34% 0 0; width:100%; height:66%; object-fit:cover; transition:.6s cubic-bezier(.2,.7,.2,1); z-index:-1; }
.product-card .contain { object-fit:contain; inset:24% 2% 1%; width:96%; height:74%; }
.product-card .padded { padding:1.5rem; mix-blend-mode:multiply; }
.product-card:hover img { transform:scale(1.05); }
.card-copy { position:absolute; top:0; left:0; right:0; padding:2rem; }
.card-copy span { text-transform:uppercase; font-size:9px; letter-spacing:.16em; font-weight:800; }
.card-copy h3 { font:400 clamp(30px,3vw,48px)/1 Georgia,serif; margin:.7rem 0; }
.card-copy p { margin:0; font-size:12px; }
.product-card i { position:absolute; right:1.5rem; bottom:1.5rem; width:34px; height:34px; border-radius:50%; background:rgba(255,255,255,.8); display:grid; place-items:center; font:italic 13px Georgia,serif; }
.lime-card { background:var(--lime); }
.blue-card { background:var(--blue); }
.cream-card { background:#ede9da; }
.moss-card { background:#7f9f80; color:#07271e; }
.orange-card { background:#a9cf48; }
.manufacturing-band { min-height:730px; position:relative; display:flex; align-items:flex-end; margin:0 4vw; }
.manufacturing-band>img { object-fit:cover; }
.manufacturing-band:after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(5,35,26,.86),rgba(5,35,26,.2)); }
.manufacturing-overlay { position:relative; z-index:2; color:#fff; max-width:670px; padding:7vw; }
.manufacturing-overlay p { max-width:550px; line-height:1.7; }
.manufacturing-overlay .button { margin-top:1.5rem; }
.closing-section { display:grid; grid-template-columns:.25fr 1.1fr .65fr; gap:5vw; align-items:end; }
.big-index { font:italic 70px Georgia,serif; color:var(--orange); }
.closing-section p { line-height:1.8; color:#526e65; }
.site-footer { background:var(--deep); color:#fff; padding:8vw 8vw 2rem; }
.footer-lead { display:flex; flex-direction:column; align-items:flex-start; padding-bottom:7vw; border-bottom:1px solid rgba(255,255,255,.2); }
.footer-lead .button { margin-top:3rem; }
.footer-grid { display:grid; grid-template-columns:2fr repeat(3,1fr); gap:5vw; padding:5vw 0; }
.brand-light .brand-mark { background:var(--lime); color:var(--deep); }
.footer-grid>div { display:flex; flex-direction:column; align-items:flex-start; gap:.8rem; }
.footer-grid p { max-width:330px; line-height:1.6; color:#b9c9c3; }
.footer-grid>div>strong { color:var(--lime); text-transform:uppercase; letter-spacing:.15em; font-size:9px; margin-bottom:.5rem; }
.footer-grid a,.footer-grid address { font-size:13px; font-style:normal; line-height:1.65; color:#dce5e2; }
.footer-bottom { display:flex; justify-content:space-between; border-top:1px solid rgba(255,255,255,.16); padding-top:1.5rem; color:#97ada5; font-size:10px; text-transform:uppercase; letter-spacing:.1em; }
.page-hero { min-height:620px; display:grid; grid-template-columns:1fr 1fr; align-items:end; padding:7vw 8vw; background:var(--cream); }
.page-hero h1 { max-width:840px; }
.page-hero p { align-self:end; max-width:520px; line-height:1.8; color:#526b63; padding-bottom:1rem; }
.page-hero.center { grid-template-columns:1fr; text-align:center; justify-items:center; }
.page-hero.center p { max-width:700px; }
.product-detail { display:grid; grid-template-columns:1fr 1fr; min-height:680px; border-top:1px solid var(--line); scroll-margin-top:86px; }
.product-detail:nth-child(odd) .detail-image { order:2; }
.detail-image { position:relative; min-height:620px; background:#e9efe0; overflow:hidden; }
.detail-image img { width:100%; height:100%; object-fit:cover; }
.detail-image img.contain { object-fit:contain; padding:7%; }
.detail-copy { display:flex; flex-direction:column; justify-content:center; padding:8vw; }
.detail-number { font:italic 45px Georgia,serif; color:var(--orange); }
.detail-copy h2 { font:400 clamp(40px,5vw,72px)/1 Georgia,serif; margin:1.2rem 0; }
.detail-copy>p { line-height:1.8; color:#536d65; }
.spec-list { display:grid; grid-template-columns:1fr 1fr; gap:0; margin-top:2rem; border-top:1px solid var(--line); }
.spec-list span { padding:1rem 0; border-bottom:1px solid var(--line); font-size:10px; text-transform:uppercase; letter-spacing:.1em; font-weight:800; }
.spec-list span:nth-child(odd) { margin-right:1rem; }
.process-list { padding:0 8vw 9vw; }
.process-step { display:grid; grid-template-columns:.2fr 1fr .8fr; align-items:start; gap:4vw; padding:4vw 0; border-top:1px solid var(--line); }
.process-step strong { font:italic 42px Georgia,serif; color:var(--orange); }
.process-step h2 { font:400 clamp(34px,4vw,60px)/1 Georgia,serif; margin:0; }
.process-step p { margin:0; line-height:1.75; color:#536c64; }
.image-split { display:grid; grid-template-columns:1.1fr .9fr; min-height:700px; }
.image-split .image-panel { position:relative; }
.image-split .image-panel img { object-fit:cover; }
.image-split .copy-panel { display:flex; flex-direction:column; justify-content:center; padding:8vw; background:var(--lime); }
.image-split h2 { font:400 clamp(42px,5vw,72px)/1 Georgia,serif; margin:1.5rem 0; }
.image-split p { line-height:1.8; }
.contact-grid { display:grid; grid-template-columns:1.1fr .9fr; margin:0 8vw 9vw; border:1px solid var(--ink); }
.contact-panel { padding:6vw; }
.contact-panel.dark { background:var(--deep); color:white; }
.contact-panel h2 { font:400 clamp(38px,4vw,60px)/1 Georgia,serif; margin:1rem 0 2rem; }
.contact-panel p,.contact-panel li { line-height:1.75; }
.contact-panel ul { padding-left:1.2rem; }
.contact-panel address { font-style:normal; line-height:1.8; }
.quote-list { list-style:none; padding:0!important; }
.quote-list li { padding:1rem 0; border-bottom:1px solid rgba(255,255,255,.2); }
.quote-list li:before { content:"→"; color:var(--lime); margin-right:1rem; }
@media (max-width:980px) {
  .site-header { grid-template-columns:1fr auto; }
  .site-header nav { display:none; }
  .hero { grid-template-columns:1fr; padding-top:10vw; }
  .hero-copy { padding-left:0; }
  .hero-visual { min-height:460px; }
  .products-intro,.closing-section,.page-hero,.image-split,.contact-grid { grid-template-columns:1fr; }
  .product-grid { grid-template-columns:1fr 1fr; }
  .product-card-wide { grid-column:span 2; }
  .footer-grid { grid-template-columns:1.5fr 1fr 1fr; }
  .footer-grid>div:last-child { grid-column:2; }
  .product-detail { grid-template-columns:1fr; }
  .product-detail:nth-child(odd) .detail-image { order:0; }
  .process-step { grid-template-columns:.2fr 1fr; }
  .process-step p { grid-column:2; }
  .image-panel { min-height:500px; }
}
@media (max-width:640px) {
  .site-header { height:72px; padding:0 18px; }
  .brand-mark { width:34px; height:34px; font-size:21px; }
  .brand strong { font-size:12px; }
  .button-small { padding:0 14px; min-height:38px; font-size:9px; }
  .hero { min-height:auto; padding:70px 22px 20px; }
  .hero h1,.page-hero h1 { font-size:50px; }
  .hero-copy>p { font-size:15px; }
  .button-row { align-items:flex-start; flex-direction:column; gap:.8rem; }
  .hero-visual { min-height:340px; }
  .hero-visual img { width:125%; }
  .proof-strip { grid-template-columns:1fr 1fr; margin:0 18px; }
  .proof-strip div:nth-child(2) { border-right:0; }
  .proof-strip div:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .section { padding:80px 22px; }
  .products-intro { gap:2rem; }
  .product-grid { margin:0 18px 70px; grid-template-columns:1fr; }
  .product-card,.product-card-wide { grid-column:auto; min-height:450px; }
  .manufacturing-band { margin:0 18px; min-height:620px; }
  .manufacturing-overlay { padding:35px; }
  .closing-section { gap:2rem; }
  .site-footer { padding:80px 24px 30px; }
  .footer-grid { grid-template-columns:1fr 1fr; }
  .footer-grid>div:first-child { grid-column:span 2; }
  .footer-grid>div:last-child { grid-column:auto; }
  .footer-bottom { gap:1rem; flex-direction:column; }
  .page-hero { min-height:540px; padding:90px 24px 60px; }
  .detail-image { min-height:460px; }
  .detail-copy { padding:70px 24px; }
  .process-list { padding:0 24px 70px; }
  .process-step { grid-template-columns:1fr; padding:50px 0; }
  .process-step p { grid-column:auto; }
  .image-split .copy-panel { padding:70px 24px; }
  .contact-grid { margin:0 18px 70px; }
  .contact-panel { padding:50px 28px; }
}


/* ECOVILLE BAGS PAGE */
.bags-cta{margin:0 4vw 8vw;min-height:520px;display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:4vw;padding:5vw;background:var(--deep);color:#fff;overflow:hidden}.bags-cta h2{font:400 clamp(40px,5vw,74px)/1 Georgia,serif;margin:1.5rem 0}.bags-cta p{max-width:610px;line-height:1.8;color:#c5d3ce}.bags-cta img{width:112%;filter:drop-shadow(0 25px 24px rgba(0,0,0,.25))}.bags-hero{min-height:760px;display:grid;grid-template-columns:.88fr 1.12fr;align-items:center;background:linear-gradient(135deg,var(--cream),#fff)}.bags-hero-copy{padding:8vw}.bags-hero h1{font:400 clamp(58px,6.5vw,104px)/.9 Georgia,serif;letter-spacing:-.055em;margin:2rem 0}.bags-hero h1 em{color:var(--green);font-weight:400}.bags-hero-copy>p{max-width:620px;line-height:1.8;color:#4f6e64;font-size:17px}.bags-hero-image{position:relative;min-height:760px;background:radial-gradient(circle at 48% 45%,rgba(198,240,78,.7),rgba(198,240,78,.15) 45%,transparent 70%)}.bags-hero-image img{object-fit:contain;padding:5%;filter:drop-shadow(0 35px 32px rgba(12,60,44,.18))}.category-nav{position:sticky;top:86px;z-index:40;display:grid;grid-template-columns:repeat(5,1fr);background:var(--deep);color:#fff}.category-nav a{padding:1.25rem;text-align:center;border-right:1px solid rgba(255,255,255,.16);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.12em}.category-nav a:hover{background:var(--green);color:var(--lime)}.bag-feature{display:grid;grid-template-columns:1.05fr .95fr;min-height:760px;border-bottom:1px solid var(--line);scroll-margin-top:140px}.bag-feature:nth-child(even) .bag-feature-image{order:2}.bag-feature-image{position:relative;min-height:680px;background:linear-gradient(145deg,#edf3e6,var(--cream))}.bag-feature-image img{object-fit:contain;padding:6%}.bag-feature-copy{display:flex;flex-direction:column;justify-content:center;padding:8vw}.bag-feature-copy h2{font:400 clamp(44px,5.5vw,78px)/.95 Georgia,serif;margin:1.2rem 0}.bag-feature-copy>p{max-width:600px;line-height:1.8;color:#536d65}.bag-feature-copy .button{width:max-content;margin-top:2.4rem}.uses-line{margin-top:1.6rem;text-transform:uppercase;letter-spacing:.14em;font-size:9px;color:var(--orange)}.uses{margin-top:.5rem!important;font-weight:700;color:var(--ink)!important}.more-formats{display:grid;grid-template-columns:.8fr 1.2fr;gap:6vw;padding:9vw 8vw;background:var(--deep);color:#fff}.more-formats h2{font:400 clamp(46px,5.5vw,82px)/.98 Georgia,serif;margin:1.5rem 0}.more-formats>div>p{max-width:520px;line-height:1.8;color:#b9cbc5}.format-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(255,255,255,.2);border-left:1px solid rgba(255,255,255,.2)}.format-grid article{padding:2.2rem;border-right:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2)}.format-grid b{color:var(--lime);font:italic 22px Georgia,serif}.format-grid h3{font:400 29px/1.05 Georgia,serif;margin:1rem 0}.format-grid p{font-size:13px;line-height:1.7;color:#b9cbc5}
@media(max-width:980px){.bags-cta,.bags-hero,.bag-feature,.more-formats{grid-template-columns:1fr}.bags-hero-image{min-height:560px}.category-nav{top:72px;overflow-x:auto;grid-template-columns:repeat(5,minmax(135px,1fr))}.bag-feature:nth-child(even) .bag-feature-image{order:0}.bag-feature-image{min-height:560px}.more-formats{gap:4rem}.bags-cta img{width:100%}}
@media(max-width:640px){.bags-cta{margin:0 18px 70px;padding:60px 24px}.bags-hero{min-height:auto}.bags-hero-copy{padding:80px 24px 40px}.bags-hero h1{font-size:52px}.bags-hero-image{min-height:400px}.bag-feature-image{min-height:420px}.bag-feature-copy{padding:70px 24px}.more-formats{padding:80px 24px}.format-grid{grid-template-columns:1fr}}


/* ECOVILLE FACTORY MEDIA */
.brand-wordmark{display:block;padding-left:12px;border-left:3px solid var(--lime)}
.brand small{font-size:7px}
.factory-feature{display:grid;grid-template-columns:.8fr 1.2fr;gap:0;margin:0 4vw 8vw;background:var(--deep);color:#fff}
.factory-feature-copy{display:flex;flex-direction:column;justify-content:center;padding:7vw}
.factory-feature-copy h2,.factory-gallery-heading h2,.factory-film-section h2{font:400 clamp(42px,5vw,76px)/.98 Georgia,serif;letter-spacing:-.04em;margin:1.4rem 0}
.factory-feature-copy p,.factory-gallery-heading p,.factory-film-section p{line-height:1.8}
.factory-feature>img{width:100%;height:100%;min-height:560px;object-fit:cover}
.factory-gallery-section{padding:9vw 4vw}
.factory-gallery-heading{display:grid;grid-template-columns:1fr .8fr;gap:5vw;align-items:end;padding:0 4vw 5vw}
.factory-gallery-heading .eyebrow{grid-column:1/-1}
.factory-gallery-heading h2,.factory-gallery-heading p{margin:0}
.factory-gallery{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:250px;gap:14px}
.factory-photo{position:relative;grid-column:span 4;grid-row:span 2;overflow:hidden;margin:0;background:var(--cream)}
.factory-photo-wide{grid-column:span 8}.factory-photo-tall{grid-row:span 3}
.factory-photo img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.factory-photo:hover img{transform:scale(1.035)}
.factory-photo figcaption{position:absolute;left:18px;bottom:18px;padding:9px 12px;background:rgba(10,45,35,.86);color:#fff;font-size:9px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.factory-film-section{display:grid;grid-template-columns:.7fr 1.3fr;gap:5vw;align-items:center;margin:0 4vw 9vw;padding:6vw;background:var(--deep);color:#fff}
.factory-film-section>div:first-child p{color:#b9cbc5}.factory-films{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.factory-films video{display:block;width:100%;aspect-ratio:9/16;max-height:620px;object-fit:cover;background:#061b15}
@media(max-width:980px){.factory-feature,.factory-gallery-heading,.factory-film-section{grid-template-columns:1fr}.factory-photo,.factory-photo-wide{grid-column:span 6}}
@media(max-width:640px){.factory-feature{grid-template-columns:1fr;margin:0 18px 70px}.factory-feature-copy{padding:60px 24px}.factory-feature>img{min-height:380px}.factory-gallery-section{padding:80px 18px}.factory-gallery-heading{padding:0 6px 45px;gap:1.5rem}.factory-gallery{grid-template-columns:1fr;grid-auto-rows:340px}.factory-photo,.factory-photo-wide,.factory-photo-tall{grid-column:auto;grid-row:auto}.factory-film-section{margin:0 18px 70px;padding:60px 24px}.factory-films{grid-template-columns:1fr}}


/* OFFICIAL ECOVILLE IDENTITY */
.brand-wordmark{padding-left:0;border-left:0}
.brand-logo{width:58px;height:58px;object-fit:contain;flex:0 0 auto;filter:drop-shadow(0 4px 6px rgba(6,37,27,.12))}
.footer-brand-logo,.brand-light .brand-logo{width:94px;height:94px;padding:6px;border-radius:10px;background:#fff}
.company-logo{width:210px;height:auto;margin:0 0 2.2rem;filter:drop-shadow(0 12px 18px rgba(5,45,33,.14))}
.contact-logo{width:210px;height:auto;margin:0 0 2rem}
.contact-lines{display:flex;flex-direction:column;align-items:flex-start;gap:.65rem;margin:2rem 0;padding:1.5rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.contact-lines a{font-size:13px;font-weight:700;color:var(--green);overflow-wrap:anywhere}
.bag-card::after,.bags-cta::after,.bags-hero-image::after,.bag-feature-image::after,.branded-product-image::after,.detail-image::after,.factory-photo::after,.manufacturing-band::before,.factory-feature::after,.image-split .image-panel::after{content:"";position:absolute;background:url('/images/ecoville-logo.png') center/contain no-repeat;z-index:5;pointer-events:none;filter:drop-shadow(0 5px 8px rgba(0,0,0,.14))}
.bag-card::after{width:74px;height:74px;right:18px;top:120px}
.bags-cta{position:relative}.bags-cta::after{width:92px;height:92px;right:30px;bottom:24px}
.bags-hero-image::after{width:118px;height:118px;right:30px;top:30px}
.bag-feature-image::after,.branded-product-image::after{width:98px;height:98px;right:28px;bottom:28px}
.factory-photo::after{width:64px;height:64px;right:16px;top:16px;opacity:.9}
.manufacturing-band::before{width:92px;height:92px;right:28px;top:28px}
.factory-feature{position:relative}.factory-feature::after{width:84px;height:84px;right:22px;bottom:22px}
.image-split .image-panel::after{width:82px;height:82px;right:22px;bottom:22px}
@media(max-width:640px){.site-header .brand-logo{width:42px;height:42px}.site-header .brand-wordmark small{display:none}.site-header .brand-wordmark strong{font-size:10px}.footer-brand-logo{width:78px;height:78px}.bag-card::after{width:58px;height:58px;top:118px}.bags-hero-image::after{width:82px;height:82px;right:16px;top:16px}.bag-feature-image::after,.branded-product-image::after{width:70px;height:70px;right:16px;bottom:16px}.manufacturing-band::before{width:68px;height:68px;right:16px;top:16px}}

.manufacturing-band>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.image-split .image-panel img,.bags-hero-image>img,.bag-feature-image>img{width:100%;height:100%;object-fit:contain}.image-split .image-panel img{object-fit:cover}