/* ==========================================================================
   Biocompig - eigen opmaak
   Verzameld uit de inline <style>-blokken van de PHP-bestanden.
   Wordt in index.php geladen na biocompig.css en responsive.css.
   ========================================================================== */

/* --------------------------------------------------------------------------
   Winkelwagen (zijbalk) en footer (1) - uit index.php
   -------------------------------------------------------------------------- */
.gi-side-cart .bc-cart-items .gi-pro-img img { object-fit:contain; background:#fff; }
.gi-side-cart .bc-cart-items .gi-pro-content { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:8px; padding-right:0; flex:1; min-width:0; }
.gi-side-cart .bc-cart-items .gi-pro-content .cart-pro-title { padding-right:30px; }
.gi-side-cart .bc-cart-items .bc-qty { display:flex; width:100%; }
.gi-side-cart .bc-cart-items .bc-qty input { flex:1; width:auto; min-width:0; }
.gi-side-cart .bc-cart-items .cart-pro-title { margin:0; }
.gi-side-cart .bc-cart-type { width:100%; height:34px; padding:0 28px 0 10px; border:1px solid #d6e5dd; border-radius:8px; background:#fff; font-size:13px; color:#00a260; font-weight:600; cursor:pointer; }
.bc-qty { display:inline-flex; align-items:center; border:1px solid #d6e5dd; border-radius:8px; overflow:hidden; background:#fff; height:34px; }
.bc-qty button { width:32px; height:100%; border:0; background:#ecf4f0; color:#00a260; font-size:18px; line-height:1; cursor:pointer; padding:0; }
.bc-qty button:hover { background:#00a260; color:#fff; }
.bc-qty input { width:72px; height:100%; border:0; text-align:center; font-size:15px; color:#212529; padding:0; -moz-appearance:textfield; }
.bc-qty input::-webkit-outer-spin-button, .bc-qty input::-webkit-inner-spin-button { -webkit-appearance:none; margin:0; }
.gi-side-cart .bc-cart-group { margin-bottom:20px; border-radius:12px; overflow:hidden; }
.gi-side-cart .bc-cart-group-head { display:flex; align-items:center; gap:8px; padding:10px 14px; font-size:14px; font-weight:700; text-transform:uppercase; letter-spacing:.5px; }
.gi-side-cart .bc-cart-group-head i { display:flex; font-size:16px; }
.gi-side-cart .bc-cart-group-o { border:2px solid #00a260; }
.gi-side-cart .bc-cart-group-o .bc-cart-group-head { background:#00a260; color:#fff; }
.gi-side-cart .bc-cart-group-q { border:2px dashed #e0a100; background:#fffaf0; }
.gi-side-cart .bc-cart-group-q .bc-cart-group-head { background:#fdf0cf; color:#8a6200; }
.gi-side-cart .bc-cart-group .bc-cart-items { padding:0 12px; margin:0; }
.gi-side-cart .bc-cart-group .bc-cart-items li:last-child { border-bottom:0; }
.gi-side-cart .bc-cart-empty { margin:20px 0; color:#444; }
.gi-side-cart .bc-cart-bottom { border-top:1px solid #e3e6e4; padding-top:20px; }
.gi-side-cart .gi-cart-inner .gi-cart-bottom .cart_btn { display:block; margin-bottom:20px; }
.gi-side-cart .gi-cart-inner .gi-cart-bottom .cart_btn a.bc-cart-go { display:flex !important; flex-direction:row; flex-wrap:nowrap; align-items:center; justify-content:flex-start; gap:12px; width:100%; height:auto; line-height:1.3; padding:14px 20px; font-size:15px; white-space:nowrap; }
.gi-side-cart .gi-cart-inner .gi-cart-bottom .cart_btn a.bc-cart-go span { flex:1; text-align:left; }
.gi-side-cart .gi-cart-inner .gi-cart-bottom .cart_btn a.bc-cart-go i { display:flex; flex:0 0 auto; }
.gi-side-cart .bc-cart-go { display:flex; align-items:center; justify-content:center; gap:10px; width:100%; min-height:54px; padding:14px 20px; border-radius:15px; background:#00a260; border:2px solid #00a260; color:#fff !important; font-size:15px; font-weight:600; text-transform:uppercase; letter-spacing:.5px; text-decoration:none; transition:background .2s, border-color .2s; }
.gi-side-cart .bc-cart-go i { display:flex; font-size:17px; line-height:1; }
.gi-side-cart .bc-cart-go .fi-rr-arrow-right { margin-left:auto; transition:transform .2s; }
.gi-side-cart .bc-cart-go .fi-rr-shopping-cart + span { margin-right:auto; }
.gi-side-cart .bc-cart-go:hover { background:#008a52; border-color:#008a52; }
.gi-side-cart .bc-cart-go:hover .fi-rr-arrow-right { transform:translateX(4px); }


/* --------------------------------------------------------------------------
   Winkelwagen (zijbalk) en footer (2) - uit index.php
   -------------------------------------------------------------------------- */
/* ===== Footer Biocompig ===== */
.bc-footer { background:#f8f8f8; border-top:0; color:#222; }
.bc-footer .bc-footer-top { padding:60px 0 30px; }
.bc-footer h4.bc-head { font-size:19px; font-weight:600; color:#222; margin:0 0 28px; }
.bc-footer ul { list-style:none; margin:0; padding:0; }
.bc-footer li, .bc-footer li a, .bc-footer li p { font-size:17px; line-height:25px; color:#222; margin:0; }
.bc-footer a:hover { color:#00a260; }
/* Menu */
.bc-footer .bc-menu li { margin-bottom:12px; }
.bc-footer .bc-menu li.active a { color:#00a260; font-weight:600; font-size:19px; }
/* Nieuws */
.bc-footer .bc-news li { display:flex; align-items:flex-start; gap:12px; margin-bottom:26px; }
.bc-footer .bc-news i { color:#00a260; font-size:28px; line-height:1; margin-top:2px; }
/* Contact: tekst ingesprongen, icoon in de linker kolom */
.bc-footer .bc-contact li { position:relative; padding-left:40px; margin-bottom:8px; }
.bc-footer .bc-contact li.gap { margin-top:22px; }
.bc-footer .bc-contact li i { position:absolute; left:0; top:2px; width:28px; text-align:center; color:#00a260; font-size:22px; line-height:1; }
/* Menu, Nieuws en Contact in één rij; de ruimte wordt gelijk verdeeld zodat de streepjes precies in het midden staan */
.bc-footer .bc-cols { display:flex; justify-content:space-between; align-items:stretch; padding-right:20px; }
.bc-footer .bc-cols > .bc-col { flex:0 1 auto; min-width:0; }
.bc-footer .bc-vsep { flex:0 0 1px; background:#ddd; margin:0 15px; }
@media (max-width:767px) {
	.bc-footer .bc-cols { display:block; padding-right:0; }
	.bc-footer .bc-vsep { display:none; }
}
/* Kaart */
.bc-footer .bc-map { width:100%; height:390px; border:0; display:block; }
/* Onderbalk: logo links, groene band met social media rechts */
.bc-footer .bc-bottom { display:flex; align-items:flex-end; }
/* Logo met groene boog die doorloopt in de band: band precies 40px hoog, logo 400x140 */
.bc-footer .bc-logo { flex:0 0 auto; padding:0; line-height:0; }
.bc-footer .bc-logo img { display:block; width:400px; max-width:100%; height:auto; }
.bc-footer .bc-social { flex:1 1 auto; background:#00a260; color:#fff; display:flex; align-items:center; flex-wrap:nowrap; gap:14px; padding:0 20px; height:40px; white-space:nowrap; }
.bc-footer .bc-social span { font-size:18px; font-weight:600; color:#fff; }
.bc-footer .bc-social a { color:#fff; font-size:22px; line-height:1; }
.bc-footer .bc-social a:hover { color:#e3f3ea; }
/* .gicon is in biocompig.css groen gemaakt; in de groene band wit */
.bc-footer .bc-social a .gicon { color:#fff; }
.bc-footer .bc-social a:hover .gicon { color:#e3f3ea; }
.bc-footer .bc-copy { margin-left:auto; font-size:13px; color:#fff; letter-spacing:.5px; font-weight:300; }
.bc-footer .bc-copy a { font-size:13px; color:#fff; text-decoration:underline; }
.bc-footer .bc-copy-sm { display:none; padding:12px 15px; text-align:center; font-size:13px; color:#777; }
.bc-footer .bc-copy-sm a { color:#777; text-decoration:underline; }
@media (max-width:1199px) {
	.bc-footer .bc-copy { display:none; }
	.bc-footer .bc-copy-sm { display:block; }
}
/* iPad */
@media (max-width:991px) {
	.bc-footer .bc-footer-top { padding:40px 0 10px; }
	.bc-footer .bc-col { margin-bottom:30px; }
	.bc-footer .bc-map { height:300px; }
	.bc-footer .bc-logo img { width:320px; }
	.bc-footer .bc-social { height:32px; gap:10px; padding:0 15px; }
	.bc-footer .bc-social span { font-size:15px; }
	.bc-footer .bc-social a { font-size:18px; }
	.bc-footer li, .bc-footer li a, .bc-footer li p { font-size:16px; }
	.bc-footer .bc-contact li { padding-left:32px; }
	.bc-footer .bc-contact li i { font-size:24px; }
}
/* Telefoon */
@media (max-width:767px) {
	.bc-footer h4.bc-head { margin-bottom:16px; }
	.bc-footer li, .bc-footer li a, .bc-footer li p { font-size:16px; }
	.bc-footer .bc-contact li { padding-left:40px; }
	.bc-footer .bc-contact li i { font-size:24px; }
	.bc-footer .bc-map { height:250px; }
	.bc-footer .bc-bottom { flex-direction:column; align-items:stretch; }
	.bc-footer .bc-logo { padding:0 0 15px; text-align:center; }
	.bc-footer .bc-logo img { margin:0 auto; width:260px; }
	.bc-footer .bc-social { justify-content:center; text-align:center; padding:10px 15px; height:auto; flex-wrap:wrap; white-space:normal; }
	.bc-footer .bc-social span { width:100%; font-size:16px; }
}


/* --------------------------------------------------------------------------
   Tekstblokken - uit include/site/text.php
   -------------------------------------------------------------------------- */

:root { --gi-cw: 100vw; }
@media (min-width:576px)  { :root { --gi-cw: 540px; } }
@media (min-width:768px)  { :root { --gi-cw: 720px; } }
@media (min-width:992px)  { :root { --gi-cw: 960px; } }
@media (min-width:1200px) { :root { --gi-cw: 1140px; } }
@media (min-width:1400px) { :root { --gi-cw: 1320px; } }
@media (min-width:1600px) { :root { --gi-cw: 1600px; } }
:root { --gi-side: calc((100vw - var(--gi-cw)) / 2 - 10px); }
.gi-side-bg { position:absolute; z-index:0; pointer-events:none; width:153px; height:auto; max-width:none; }
.gi-side-bg.left  { left:min(0px, calc(var(--gi-side) - 153px));  top:10%; }
.gi-side-bg.right { right:min(0px, calc(var(--gi-side) - 153px)); top:40%; }
@media (max-width:575px) { .gi-side-bg { display:none; } }
.gi-certificate-green { background:#ecf4f0; }
.gi-certificate-green div { padding:20px; }
.gi-certificate-white div { padding:20px;  }
.gi-side-bg-wrap { position:absolute; top:0; left:0; width:100%; height:100%; overflow:hidden; pointer-events:none; z-index:0; }
.gi-faq-photo { background:#ecf4f0; padding:26px; border-radius: 15px; }
.gi-faq-photo img { display:block; width:100%; height:auto; }
.margin-bottom-image { margin-bottom:34px; }
.gi-about-detail table td, .gi-about-detail table th { vertical-align:top !important; }
.gi-about-detail ul { list-style:none; padding-left:0; margin:16px 0 10px 0; }
.gi-about-detail ul li { position:relative; padding-left:26px; list-style:none; }
.gi-about-detail ul li:before { content:""; position:absolute; left:0; top:6px; width:16px; height:16px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 22V12' stroke='%2300a260' stroke-width='2.4' stroke-linecap='round' fill='none'/%3E%3Cpath d='M12 14C6.5 14 3.5 10.5 3.5 6.5C8.5 6.5 12 9 12 14Z' fill='%2300a260'/%3E%3Cpath d='M12 11.5C12 6.5 15 2.5 21 2.5C21 8 17.5 11.5 12 11.5Z' fill='%2300a260'/%3E%3C/svg%3E") no-repeat center / contain; }

/* --------------------------------------------------------------------------
   Referenties - uit include/site/references.php
   -------------------------------------------------------------------------- */
.gi-ref { position:relative; padding:40px 0; }
/* Takje gespiegeld links naast het blok: de stengel begint tegen de groene rand */
.gi-ref-leaf { position:absolute; right:100%; top:50%; transform:translateY(-50%) scaleX(-1); width:280px; max-width:none; height:auto; margin-right:-2px; pointer-events:none; }
.gi-ref-box { position:relative; z-index:1; border:2px solid #00a260; border-radius:12px; padding:30px 50px 28px; text-align:center; background:transparent; }
.gi-ref-label { color:#00a260; font-size:16px; text-transform:uppercase; letter-spacing:.03em; margin-bottom:22px; }
.gi-ref-slider { overflow:hidden; }
.gi-ref-quote { max-width:760px; margin:0 auto; color:#444; font-size:16px; line-height:26px; }
.gi-ref-quote:before { content:"\201C"; }
.gi-ref-quote:after  { content:"\201D"; }
.gi-ref-name { margin-top:12px; color:#777; font-size:14px; }
.gi-ref-stars { display:flex; justify-content:flex-end; gap:4px; margin-top:12px; }
.gi-ref-stars svg { width:24px; height:24px; fill:#ffcd4d; }
.gi-ref-stars svg.half { fill:url(#gi-ref-half); }
@media (max-width:991px){ .gi-ref-leaf { display:none; } .gi-ref-box { padding:24px 20px; } .gi-ref-stars { justify-content:center; } }


/* --------------------------------------------------------------------------
   FAQ (formulier 4) - uit include/site/form_4.php
   -------------------------------------------------------------------------- */
.gi-faq .gi-accordion.style-1 .gi-accordion-body { padding:15px; border:1px solid #eee; border-top:0; border-radius:0 0 5px 5px; }
.gi-faq .gi-accordion.style-1 .gi-accordion-header { cursor:pointer; padding-left:45px; }
/* Plus/min-icoon in plaats van het pijltje van het thema */
.gi-faq .gi-accordion.style-1 .gi-accordion-header:after { display:none; }
.gi-faq .gi-accordion-header .gi-faq-icon { position:absolute; left:15px; top:50%; transform:translateY(-50%); font-size:20px; line-height:1; color:#00a260; }
.gi-faq .gi-accordion-header .gi-faq-icon-open { display:none; }
.gi-faq .gi-accordion-item.open .gi-faq-icon-open { display:inline-block; }
.gi-faq .gi-accordion-item.open .gi-faq-icon-closed { display:none; }
/* Afbeeldingen rechts: lichtgroene lijst rondom */
.gi-faq .gi-faq-photo { background:#ecf4f0; padding:26px; }
.gi-faq .gi-faq-photo img { display:block; width:100%; height:auto; }
.margin-bottom-image { margin-bottom:34px; }
@media (max-width:767px) { .gi-faq .gi-faq-photos { margin-top:30px; } }

/* --------------------------------------------------------------------------
   Productoverzicht (menu-item) - uit include/site/menu-item.php
   -------------------------------------------------------------------------- */

.shop-pro-inner:not(.list-view) .gi-list-only { display:none; }
.shop-pro-inner:not(.list-view) .gi-pro-content { align-items:center; text-align:center; }
.gi-filter-item a { padding-left:28px; }
.gi-filter-empty { display:none; padding:20px 0; }
.shop-pro-inner:not(.filter-ready) .gi-product-box { display:none; }
/* Apps-weergave: afbeelding in het midden */
.shop-pro-inner:not(.list-view) .gi-pro-image .image img { margin-left:auto; margin-right:auto; }
.shop-pro-inner:not(.list-view) .gi-pro-image .image img.hover-image { left:0; right:0; }
/* Afbeelding klikbaar maken (het thema zet pointer-events:none op de link) */
.gi-product-inner .gi-pro-image .image { pointer-events:auto; cursor:pointer; }

/* --------------------------------------------------------------------------
   Productpagina - uit include/site/product-item.php
   -------------------------------------------------------------------------- */
/* Productafbeelding: eerste afbeelding groot in een lichtgroene lijst, tweede afbeelding als logo linksonder */
.gi-single-product .bc-pro-photo { position:relative; padding:0 0 45px 45px; }
.gi-single-product .bc-pro-frame { background:#ecf4f0; padding:26px; }
.gi-single-product .bc-pro-frame img { display:block; width:100%; height:auto; border-radius:10px; }
.gi-single-product .bc-pro-logo { position:absolute; left:0; bottom:0; width:32%; background:#fff; padding:10px 16px 4px 0; border-top-right-radius:55px; }
.gi-single-product .bc-pro-logo img { display:block; width:100%; height:auto; }
/* Vanaf 992px: afbeelding 1/3 (col-4), titel en tekst 2/3 (col-8). Kleiner blijft het thema onder elkaar zetten */
.background-green-color { background:#ecf4f0; padding:26px; border-radius: 15px; }
.background-gray-color { background:#f8f8fb; padding:26px; border-radius: 15px; }
.px-26 { padding-left: 26px; padding-right: 26px; }
.gi-single-product h4 { color:#00a260 !important; padding-bottom: 10px; }
/* Tussenkopjes (h3) in de producttekst: zelfde grootte als de tekst, groen en vet */
.gi-single-product h3 { color:#00a260; font-size:14px; line-height:26px; font-weight:700; margin:12px 0 26px; }
/* Opsommingen: groen kiemplantje voor elke regel (zelfde als in text.php) */
.gi-single-product .gi-single-desc ul, .gi-single-product .background-green-color ul, .gi-single-product .background-gray-color ul { list-style:none; padding-left:0; margin:10px 0; }
.gi-single-product .gi-single-desc ul li, .gi-single-product .background-green-color ul li, .gi-single-product .background-gray-color ul li { position:relative; padding-left:26px; list-style:none; display:block; }
.gi-single-product .gi-single-desc ul li:before, .gi-single-product .background-green-color ul li:before, .gi-single-product .background-gray-color ul li:before { content:""; position:absolute; left:0; top:6px; width:16px; height:16px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 22V12' stroke='%2300a260' stroke-width='2.4' stroke-linecap='round' fill='none'/%3E%3Cpath d='M12 14C6.5 14 3.5 10.5 3.5 6.5C8.5 6.5 12 9 12 14Z' fill='%2300a260'/%3E%3Cpath d='M12 11.5C12 6.5 15 2.5 21 2.5C21 8 17.5 11.5 12 11.5Z' fill='%2300a260'/%3E%3C/svg%3E") no-repeat center / contain; }
/* Keurmerk (ISO 22000) rond, onderaan in het midden van het tweede vak, half over de rand */
.gi-single-product .bc-has-badge { position:relative; padding-bottom:95px; }
.gi-single-product .bc-badge { position:absolute; left:50%; bottom:0; transform:translate(-50%, 50%); width:140px; height:140px; border-radius:50%; background:#fff; overflow:hidden; }
.gi-single-product .bc-badge img { display:block; width:100%; height:100%; object-fit:contain; }
.gi-single-product .row:has(.bc-badge-col) { margin-bottom:75px; }
/* Vak 5: sfeerafbeelding op witte achtergrond */
.gi-single-product .bc-image-card { background:#fff; height:100%; display:flex; align-items:center; justify-content:center; padding:0; }
.gi-single-product .bc-image-card img { display:block; width:100%; height:auto; }
/* Ruimte tussen de vakken overal gelijk: 26px links + 26px rechts = 52px, dus ook 52px tussen de rijen */
.gi-single-product .px-26.mb-4 { margin-bottom:52px !important; }
/* Vak 6: verpakkingen als nette lijst met lijntjes ertussen */
.gi-single-product .bc-pack-list li { padding-top:10px !important; padding-bottom:10px; border-bottom:1px solid #e3e6e4; }
.gi-single-product .bc-pack-list li:last-child { border-bottom:0; }
.gi-single-product .bc-pack-list li:before { top:15px !important; }
/* Alle tekst in de vakken gelijk aan 'Composition': 16px / 24px, normaal gewicht, zelfde kleur */
.gi-single-product .background-green-color p, .gi-single-product .background-gray-color p,
.gi-single-product .background-green-color li, .gi-single-product .background-gray-color li,
.gi-single-product .background-green-color td, .gi-single-product .background-gray-color td,
.gi-single-product .background-green-color th, .gi-single-product .background-gray-color th,
.gi-single-product .background-green-color span, .gi-single-product .background-gray-color span
{ font-family:"Poppins", sans-serif; font-size:16px; line-height:24px; font-weight:400; color:#212529; letter-spacing:normal; }
/* Documenten (PDF) in vak 4 */
.gi-single-product .bc-docs { display:grid; grid-template-columns:repeat(4, 1fr); gap:16px; margin-top:6px; max-width:75%; }
.gi-single-product .bc-doc { display:block; text-decoration:none; }
.gi-single-product .bc-doc-thumb { position:relative; display:flex; align-items:center; justify-content:center; aspect-ratio:210/297; background:#fff; border:1px solid #d6e5dd; border-radius:8px; overflow:hidden; transition:box-shadow .2s, transform .2s; }
.gi-single-product .bc-doc:hover .bc-doc-thumb { box-shadow:0 6px 18px rgba(0,0,0,.12); transform:translateY(-2px); }
.gi-single-product .bc-doc-thumb canvas, .gi-single-product .bc-doc-thumb img { display:block; width:100%; height:100%; object-fit:cover; object-position:top; }
.gi-single-product .bc-doc-thumb canvas { position:absolute; inset:0; opacity:0; transition:opacity .3s; }
.gi-single-product .bc-doc-thumb.is-loaded canvas { opacity:1; }
.gi-single-product .bc-doc-icon { font-size:42px; color:#00a260; line-height:1; }
.gi-single-product .bc-doc-thumb.is-loaded .bc-doc-icon { display:none; }
.gi-single-product .bc-docs .bc-doc-title { display:block; margin-top:6px; font-size:12px; line-height:16px; font-weight:500; color:#212529; text-align:center; word-break:break-word; }
.gi-single-product .bc-docs .bc-doc:hover .bc-doc-title { color:#00a260; }
@media (max-width:767px){ .gi-single-product .bc-docs { grid-template-columns:repeat(2, 1fr); } }
.gi-single-product .bc-actions { display:flex; flex-direction:column; justify-content:center; gap:16px; }
/* Knoppen naast documentenvak */
.gi-single-product .bc-btn { display:flex; align-items:center; justify-content:center; gap:10px; width:100%; min-height:56px; padding:14px 24px; border-radius:15px; font-size:16px; font-weight:600; text-transform:uppercase; letter-spacing:.5px; text-decoration:none; border:2px solid #00a260; transition:background .2s, color .2s; }
.gi-single-product .bc-btn i { font-size:18px; line-height:1; display:flex; }
.gi-single-product .bc-btn-primary { background:#00a260; color:#fff !important; }
.gi-single-product .bc-btn-primary:hover { background:#008a52; border-color:#008a52; }
.gi-single-product .bc-btn-outline { background:#fff; color:#00a260 !important; }
.gi-single-product .bc-btn-outline:hover { background:#ecf4f0; }
.gi-single-product .bc-btn-light { background:#ecf4f0; color:#00a260 !important; }
.gi-single-product .bc-btn-light:hover { background:#00a260; color:#fff !important; }
/* Ruimte onder de laatste rij gelijk aan de ruimte boven titel/afbeelding (100px) */
.gi-single-product { padding-bottom:40px !important; }
.gi-single-product .row.pt-20 { margin-bottom:0 !important; }
@media (min-width:992px){ .gi-single-product .px-26.mb-4.bc-last { margin-bottom:0 !important; } }
@media (max-width:991px){ .gi-single-product .px-26.mb-4.bc-last:last-child { margin-bottom:0 !important; } }
/* Aantal bij de winkelwagenknop */
.gi-single-product .bc-qty-row { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.gi-single-product .bc-qty-row .bc-qty-label { font-size:16px; font-weight:600; color:#212529; }
.gi-single-product .bc-qty-row .bc-qty { height:44px; }
.gi-single-product .bc-qty-row .bc-qty button { width:44px; }
.gi-single-product .bc-qty-row .bc-qty input { width:80px; }

/* --------------------------------------------------------------------------
   Winkelwagen-overzicht en aanvraagformulier (formulier 2) - uit include/site/form_2.php
   -------------------------------------------------------------------------- */
.bc-ov { padding:0 0 20px; }
.bc-ov .bc-ov-title { color:#00a260; text-transform:uppercase; margin-bottom:10px; }
.bc-ov .bc-ov-intro { font-size:16px; line-height:24px; color:#444; margin-bottom:30px; }
.bc-ov .bc-ov-box { background:#f8f8fb; border-radius:15px; padding:26px; margin-bottom:30px; }
.bc-ov .bc-ov-box h4 { color:#00a260; text-transform:uppercase; font-size:16px; font-weight:700; margin:0 0 20px; }
.bc-ov .bc-ov-group { border-radius:12px; overflow:hidden; margin-bottom:20px; background:#fff; }
.bc-ov .bc-ov-group-head { display:flex; align-items:center; gap:8px; padding:12px 16px; font-size:14px; font-weight:700; text-transform:uppercase; letter-spacing:.5px; }
.bc-ov .bc-ov-group-head i { display:flex; font-size:16px; }
.bc-ov .bc-ov-group-o { border:2px solid #00a260; }
.bc-ov .bc-ov-group-o .bc-ov-group-head { background:#00a260; color:#fff; }
.bc-ov .bc-ov-group-q { border:2px dashed #e0a100; background:#fffaf0; }
.bc-ov .bc-ov-group-q .bc-ov-group-head { background:#fdf0cf; color:#8a6200; }
.bc-ov .bc-ov-row { display:grid; grid-template-columns:80px minmax(0, 1fr) 190px 190px 160px 30px; gap:16px; align-items:center; padding:14px 16px; border-top:1px solid #e3e6e4; }
.bc-ov .bc-ov-row:first-of-type { border-top:0; }
.bc-ov .bc-ov-img { width:80px; height:80px; border-radius:8px; background:#fff; border:1px solid #e3e6e4; overflow:hidden; display:flex; align-items:center; justify-content:center; }
.bc-ov .bc-ov-img img { width:100%; height:100%; object-fit:contain; }
.bc-ov .bc-ov-name { font-size:16px; font-weight:600; color:#212529; text-decoration:none; }
.bc-ov .bc-ov-name:hover { color:#00a260; }
.bc-ov .bc-ov-field label { display:block; font-size:12px; color:#777; margin-bottom:4px; }
.bc-ov .bc-ov-field select { width:100%; height:40px; border:1px solid #d6e5dd; border-radius:8px; padding:0 10px; background:#fff; font-size:14px; color:#212529; }
.bc-ov .bc-ov-field .bc-qty { display:flex; width:100%; height:40px; }
.bc-ov .bc-ov-field .bc-qty input { flex:1; width:auto; min-width:0; }
.bc-ov .bc-ov-field .bc-cart-type-ov { color:#00a260; font-weight:600; }
.bc-ov .bc-ov-remove { font-size:24px; line-height:1; color:#d33; text-decoration:none; text-align:center; }
.bc-ov .bc-ov-remove:hover { color:#a00; }
.bc-ov .bc-ov-empty { font-size:16px; }
.bc-ov .bc-ov-continue { display:inline-flex; align-items:center; gap:8px; color:#00a260; font-weight:600; text-decoration:none; }
.bc-ov .bc-ov-continue i { display:flex; }
.bc-ov .form-group label { font-size:14px; color:#444; margin-bottom:4px; }
.bc-ov .form-control { height:44px; border-radius:8px; border:1px solid #d6e5dd; }
.bc-ov textarea.form-control { height:110px; }
.bc-ov .bc-ov-months { display:grid; grid-template-columns:repeat(4, 1fr); gap:6px 12px; }
.bc-ov .bc-ov-months label, .bc-ov .bc-ov-check { display:flex; align-items:center; gap:8px; font-size:14px; cursor:pointer; margin:0; }
.bc-ov .bc-ov-months input, .bc-ov .bc-ov-check input { width:16px; height:16px; accent-color:#00a260; margin:0; }
.bc-ov .bc-ov-send { display:flex; align-items:center; justify-content:center; gap:10px; width:100%; min-height:56px; padding:14px 24px; border-radius:15px; background:#00a260; border:2px solid #00a260; color:#fff; font-size:16px; font-weight:600; text-transform:uppercase; letter-spacing:.5px; cursor:pointer; transition:background .2s; }
.bc-ov .bc-ov-send:hover { background:#008a52; border-color:#008a52; }
.bc-ov .bc-ov-send i { display:flex; font-size:18px; }
.bc-ov .bc-ov-sent { display:flex; align-items:center; gap:14px; background:#ecf4f0; border-radius:15px; padding:26px; font-size:18px; color:#00a260; font-weight:600; }
.bc-ov .bc-ov-sent i { display:flex; font-size:30px; }
.bc-ov .hide { display:none; }
@media (max-width:991px){
	.bc-ov .bc-ov-row { grid-template-columns:70px minmax(0, 1fr) 30px; grid-template-areas:"img name del" "f1 f1 f1" "f2 f2 f2" "f3 f3 f3"; }
	.bc-ov .bc-ov-img { grid-area:img; width:70px; height:70px; }
	.bc-ov .bc-ov-name { grid-area:name; }
	.bc-ov .bc-ov-remove { grid-area:del; }
	.bc-ov .bc-ov-f1 { grid-area:f1; } .bc-ov .bc-ov-f2 { grid-area:f2; } .bc-ov .bc-ov-f3 { grid-area:f3; }
	.bc-ov .bc-ov-months { grid-template-columns:repeat(3, 1fr); }
}

