/*
Theme Name: De bakmadam
Theme URI: https://debakmadam.be
Author: De bakmadam
Description: Pastel vintage thema voor De bakmadam, met aanvraagformulier en WooCommerce voorbereiding.
Version: 1.2.5
Requires at least: 6.2
Requires PHP: 8.0
Text Domain: debakmadam
*/
:root{--cream:#faf1e6;--ivory:#fffaf3;--pink:#e7b0a7;--pale:#f4d8cc;--sage:#a8b29b;--peach:#f1d3bb;--brown:#80513e;--muted:#8a6b5c;--dark:#694533}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--dark);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.65}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'DM Serif Display',Georgia,serif;font-weight:400;line-height:1.13}em{font-weight:400;color:#b46d66}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;z-index:99;background:white;padding:.5rem}.announcement{text-align:center;background:var(--sage);font-size:12px;letter-spacing:.13em;text-transform:uppercase;padding:8px 12px;color:#fffdf6}.header{background:var(--ivory);position:sticky;top:0;z-index:30;border-bottom:1px solid #ecddcf}.nav-wrap{max-width:1240px;margin:auto;padding:7px 30px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:10px;align-items:center;color:var(--brown)}.brand img{width:65px;height:65px;object-fit:contain}.brand span{font-family:'DM Serif Display',Georgia,serif;font-size:23px;line-height:1}.brand small{display:block;font:11px 'DM Sans',sans-serif;letter-spacing:.13em;text-transform:uppercase;margin-top:5px}.menu{display:flex;align-items:center;gap:34px}.menu a{font-size:13px;font-weight:600}.menu a:hover,.text-link:hover{color:#b8736c}.nav-cta,.btn{border-radius:100px;transition:transform .2s,background .2s}.menu .nav-cta{background:var(--pink);padding:13px 21px;color:var(--dark)}.menu .nav-cta:hover,.btn:hover{transform:translateY(-2px);background:#dda59e;color:var(--dark)}.menu-toggle{display:none;border:0;background:none;font-size:27px;color:var(--brown)}.hero{background:var(--cream);overflow:hidden;position:relative}.hero-inner{max-width:1240px;margin:auto;padding:87px 42px 85px;display:grid;grid-template-columns:1.12fr 1fr;align-items:center;gap:30px}.hero-copy{position:relative;z-index:2}.eyebrow,.kicker{font-size:12px;font-weight:700;letter-spacing:.21em;text-transform:uppercase;color:#a87968}.hero h1{font-size:clamp(48px,5vw,78px);letter-spacing:-.025em;margin:26px 0}.hero-copy>p{max-width:470px;color:#795f52;line-height:1.9}.hero-actions{display:flex;flex-wrap:wrap;gap:24px;align-items:center;margin-top:30px}.btn{display:inline-flex;justify-content:center;align-items:center;gap:15px;padding:14px 27px;font-size:13px;font-weight:700;border:0}.btn-primary{background:var(--brown);color:#fffaf3}.btn-primary:hover{background:#a36a55;color:white}.text-link{font-weight:700;font-size:14px;text-decoration:underline;text-underline-offset:6px}.hero-caption{margin-top:58px;font-size:12px;letter-spacing:.12em;color:#b28c7c}.hero-art{min-height:470px;display:flex;justify-content:center;align-items:center;position:relative}.hero-arch{width:410px;max-width:90%;height:450px;background:#e9bfb1;border-radius:220px 220px 22px 22px;outline:2px solid #fff5e9;outline-offset:-18px;position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center}.hero-arch:after{content:'';width:90%;height:88%;position:absolute;border:1px dashed #fdf5e7;border-radius:220px 220px 16px 16px;pointer-events:none}.hero-cake{width:108%;max-width:none;filter:drop-shadow(0 16px 12px #af7c6340);position:relative;z-index:2;margin-top:15px}.arch-script{font-family:'DM Serif Display',serif;font-style:italic;color:#fff9ee;font-size:22px;position:absolute;bottom:24px}.arch-spark{position:absolute;top:39px;font-size:44px;color:#fff8ed}.seal{position:absolute;z-index:3;top:9px;right:-7px;background:#b5bda5;width:95px;height:95px;border-radius:50%;display:grid;place-content:center;text-align:center;font-family:'DM Serif Display',serif;color:white;line-height:1.08;transform:rotate(14deg);font-size:18px;box-shadow:0 0 0 7px #b5bda5,0 0 0 9px #fff4e8}.tiny-star{position:absolute;font-size:35px;color:#b9b5a3}.star-a{left:5%;top:18%}.star-b{right:3%;bottom:13%}.hero-bgflower{position:absolute;color:#e8c7bd;font-size:130px;opacity:.5}.flower-one{left:-45px;bottom:-95px}.flower-two{right:-40px;top:30px}.hero-bottom{border-top:1px solid #e7c8b8;padding:10px 12px;background:#edcec1;text-align:center;color:#895f51;font-size:11px;letter-spacing:.22em;text-transform:uppercase}.section{padding:110px 32px}.section-heading{text-align:center;max-width:700px;margin:0 auto 55px}.section-heading h2,.promise h2,.about h2{font-size:clamp(37px,4.6vw,58px);margin:17px 0}.section-heading>p:last-child{color:#876d60}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;max-width:1180px;margin:auto}.product{background:#fffaf4;border:1px solid #eedecf;border-radius:170px 170px 18px 18px;overflow:hidden}.product-image{height:286px;position:relative;display:flex;align-items:center;justify-content:center;border-radius:170px 170px 0 0}.product-image img{height:255px;width:100%;object-fit:contain}.blush{background:#f2d6cd}.sage{background:#d9decf}.peach{background:#f5e1ce}.flower-corner{position:absolute;right:20px;top:16px;color:#fffaf4;font-size:38px}.product-text{padding:26px 30px 36px}.product h3{font-size:28px;margin-bottom:12px}.product p{color:#8a7162;font-size:14px;min-height:69px}.product a{display:inline-block;color:#9a6558;font-size:13px;font-weight:700;border-bottom:1px solid #ae8174;padding-bottom:4px}.sample-disclaimer{text-align:center;color:#a28e81;font-size:12px;margin-top:26px}.promise{background:#a6b09b;overflow:hidden}.promise-inner{max-width:1120px;margin:auto;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px;padding:68px 30px}.promise-art{display:flex;justify-content:center}.scallop-outline{height:340px;width:340px;display:grid;place-content:center}.scallop-outline img{width:340px;filter:drop-shadow(0 12px 16px #4e594b20)}.promise-copy{color:#fffdf5}.promise-copy .kicker{color:#f6e6d6}.promise h2{color:#fffdf5}.promise h2 em{color:#fff3e0}.promise p:not(.kicker){max-width:420px}.btn-cream{background:#fff4e6;color:#80513e;margin-top:20px}.about-inner{max-width:1100px;margin:auto;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:95px}.about-panel{background:#f4dbca;border-radius:260px 260px 22px 22px;height:410px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;outline:2px dashed #fff8ee;outline-offset:-22px}.illustration-mug{font-size:135px;line-height:1.3;filter:grayscale(.15)}.corner-icon{position:absolute;left:45px;top:34px;font-size:49px;color:#fff8ef}.hand-note{font-family:'DM Serif Display',serif;font-style:italic;font-size:26px;text-align:center;color:#aa6e68}.about-copy p:not(.kicker){color:#816b5d;line-height:1.9}.about-copy .text-link{display:inline-block;margin-top:20px}.order{background:#f8ede5}.order-wrap{max-width:1050px;display:grid;grid-template-columns:1.55fr .85fr;gap:28px;margin:auto}.order-form{background:white;padding:42px;border:1px solid #ebd8c8;border-radius:16px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}.order-form label{display:block;font-size:13px;font-weight:700;color:#765444;margin-bottom:17px}.order-form input,.order-form select,.order-form textarea{display:block;width:100%;border:1px solid #d9c7b9;border-radius:8px;padding:12px 14px;background:#fffcf8;margin-top:8px;color:#624536;outline-color:#ad8a75}.order-form textarea{resize:vertical}.form-note,.form-status{font-size:12px;color:#977e70;margin:15px 0 0}.form-status{font-weight:700}.order-aside{background:#d9ddca;border-radius:180px 180px 18px 18px;padding:50px 36px 36px;text-align:center;color:#6d5a49}.aside-illustration{font-size:80px;color:#a4ad95}.order-aside h3{font-size:35px;margin:15px 0}.order-aside h3 em{color:#986b63}.aside-divider{margin:26px 0;letter-spacing:12px}.aside-small{font-size:13px}.footer{background:#80513e;color:#fff3e6;padding:57px 30px 22px}.footer-inner{max-width:1100px;margin:auto;display:grid;grid-template-columns:2fr 1fr 1.4fr;gap:35px}.footer-logo{width:135px}.footer p,.footer a{font-size:13px;color:#f7e1d3}.footer a{display:block;margin:9px 0}.footer h3{font:700 12px 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase;margin:20px 0}.footer-bottom{border-top:1px solid #a57561;max-width:1100px;margin:45px auto 0;padding-top:18px;display:flex;justify-content:space-between;font-size:11px;color:#e8cbbd}@media(max-width:900px){.menu{gap:15px}.hero-inner{grid-template-columns:1fr 1fr;padding:60px 30px}.hero h1{font-size:49px}.hero-arch{height:360px}.hero-art{min-height:360px}.promise-inner{gap:30px}.about-inner{gap:35px}.product-text{padding:22px}.product-image{height:230px}.product-image img{height:210px}}@media(max-width:700px){.announcement{font-size:10px}.nav-wrap{padding:7px 18px}.brand img{width:57px;height:57px}.brand span{font-size:20px}.menu-toggle{display:block}.menu{display:none;position:absolute;top:100%;left:0;right:0;background:var(--ivory);border-bottom:1px solid #e5d4c5;padding:20px;flex-direction:column;align-items:stretch;gap:18px}.menu.open{display:flex}.menu a{padding:5px}.menu .nav-cta{text-align:center}.hero-inner{display:flex;flex-direction:column;gap:30px;padding:62px 24px 36px}.hero h1{font-size:clamp(43px,10vw,62px);margin:20px 0}.hero-copy>p{font-size:15px}.hero-art{min-height:340px;width:100%}.hero-arch{height:330px;width:310px}.seal{right:10px;top:6px;width:75px;height:75px;font-size:15px}.hero-caption{margin-top:28px}.hero-bottom{letter-spacing:.05em;font-size:10px}.section{padding:75px 22px}.section-heading{margin-bottom:35px}.product-grid,.promise-inner,.about-inner,.order-wrap,.footer-inner{grid-template-columns:1fr}.product-grid{max-width:430px}.product-image{height:270px}.product-image img{height:245px}.product-text p{min-height:0}.promise-inner{padding:55px 25px;gap:20px}.scallop-outline,.scallop-outline img{height:auto;width:250px}.promise-copy{text-align:center}.about-inner{gap:35px}.about-panel{height:300px;max-width:400px;width:100%;margin:auto}.illustration-mug{font-size:85px}.hand-note{font-size:22px}.order-form{padding:23px}.field-row{grid-template-columns:1fr;gap:0}.order-aside{max-width:400px;width:100%;margin:auto}.footer-inner{gap:10px}.footer-bottom{gap:18px;flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}

/* Six-category assortment on desktop and mobile */
@media(min-width:701px){.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.product{min-width:0}
.order-form .btn-primary{width:100%}

/* Hero: hoofdlogo in plaats van taartillustratie */
.hero-art-logo{isolation:isolate}
.hero-logo-frame{width:min(440px,96%);aspect-ratio:1;display:grid;place-items:center;position:relative}
.hero-logo-frame:before{content:"";position:absolute;inset:5%;background:#f1d8cd;border-radius:50%;filter:blur(28px);opacity:.65;z-index:-1}
.hero-main-logo{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 12px 15px rgba(115,71,54,.13))}
@media(max-width:700px){.hero-logo-frame{width:min(335px,90vw)}.hero-art-logo{min-height:330px}}

/* Bestellen V4: drie gelijkwaardige kanalen */
.contact-methods{max-width:1150px;margin:0 auto 34px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.contact-method{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:130px;padding:23px 14px;border:1.5px solid #d8b8a6;border-radius:19px;background:#fffaf4;text-align:center;color:#744a38;text-decoration:none;box-shadow:0 4px 15px #7146270d;transition:transform .15s,box-shadow .15s}
.contact-method:hover,.contact-method:focus-visible{transform:translateY(-3px);box-shadow:0 9px 22px #7146271f}
.contact-method-primary{background:#f4dfda;border-color:#d8a8a1}
.contact-icon{font-size:27px;margin-bottom:8px}
.contact-method strong{font-size:17px}
.contact-method small{font-size:12px;margin-top:6px;overflow-wrap:anywhere}
.consent-line{display:flex!important;gap:10px;align-items:flex-start;font-size:13px!important;line-height:1.5}
.consent-line input{width:17px!important;height:17px!important;flex:none;margin-top:2px}
.form-success,.form-error{padding:13px 16px;border-radius:10px;margin-bottom:20px;font-weight:600}
.form-success{background:#dce9d9;color:#365b3e}.form-error{background:#fff0e9;color:#8c3827}
.spam-trap{position:absolute;left:-99999px;width:1px;height:1px;overflow:hidden}
@media(max-width:720px){.contact-methods{grid-template-columns:1fr;gap:10px}.contact-method{min-height:82px;padding:12px}.contact-icon{font-size:21px;margin-bottom:3px}}

/* V5 editable product images and optional about portrait */
.db-price{font-weight:700!important;color:#80513e!important;font-size:15px!important;min-height:0!important;margin:-2px 0 12px!important}
.db-about-photo{width:100%;height:100%;object-fit:cover;border-radius:inherit}

/* V6 — bewerkbare categorie-detailpagina's */
.product .db-product-image-link{display:block;border:0;padding:0;overflow:hidden}.product .db-product-title-link{border:0;padding:0;color:inherit;font-size:inherit;font-weight:inherit}.db-product-image-link img{transition:transform .2s ease}.db-product-image-link:hover img{transform:scale(1.035)}
.db-product-detail{background:var(--ivory);min-height:65vh;padding:50px 24px 95px}.db-detail-wrap{max-width:1100px;margin:auto}.db-breadcrumb{font-size:13px;color:var(--muted);margin-bottom:32px}.db-breadcrumb a{color:var(--brown);text-decoration:none}.db-breadcrumb span{margin:0 8px}.db-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.db-detail-visual{min-height:440px;border-radius:230px 230px 22px 22px;padding:35px;display:flex;justify-content:center;align-items:center}.db-detail-visual img{width:100%;max-height:440px;object-fit:contain;border-radius:16px}.db-detail-copy h1{font-size:clamp(44px,5vw,75px);line-height:1.1;color:var(--brown);margin:12px 0 25px}.db-detail-description{color:#80695b;line-height:1.85}.db-detail-price{display:flex;align-items:baseline;gap:16px;margin:22px 0;color:var(--brown)}.db-detail-price span{color:var(--muted);font-size:14px}.db-detail-price strong{font-size:23px}.db-detail-price-note{margin:23px 0;color:var(--brown);font-weight:600}.db-detail-footnote{font-size:12px;color:var(--muted);margin:0 0 26px}.db-detail-back{display:block;margin-top:19px;color:var(--brown);font-size:13px}.db-no-products{grid-column:1/-1;text-align:center}
@media(max-width:750px){.db-product-detail{padding:25px 20px 65px}.db-detail-grid{grid-template-columns:1fr;gap:28px}.db-detail-visual{min-height:290px}.db-detail-visual img{max-height:320px}}

/* V7: individuele gebakvarianten — volledig in de bestaande pastelhuisstijl */
.db-variants{margin:90px auto 5px;max-width:1100px;border-top:1px solid #ecd8c9;padding-top:70px}
.db-variant-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.db-variant-card{min-width:0;background:#fffaf4;border:1px solid #ecd8c9;border-radius:170px 170px 18px 18px;overflow:hidden}
.db-variant-photo{height:260px;background:#f2d6cd;display:flex;justify-content:center;align-items:center;overflow:hidden;border-radius:170px 170px 0 0}
.db-variant-card:nth-child(3n+2) .db-variant-photo{background:#d9decf}
.db-variant-card:nth-child(3n+3) .db-variant-photo{background:#f5e1ce}
.db-variant-photo img{width:100%;height:100%;object-fit:cover}
.db-variant-photo img[src$=".svg"]{object-fit:contain;padding:20px}
.db-variant-body{padding:23px 24px 30px}
.db-variant-body h3{font-size:27px;line-height:1.15;margin:0 0 12px;color:var(--brown)}
.db-variant-description{color:#80695b;font-size:14px;line-height:1.7}
.db-variant-description p{margin:0 0 12px}
.db-variant-price{color:#80513e;font-size:18px;font-weight:700;margin:15px 0 3px}
.db-variant-unit{color:#8a7162;font-size:12px;margin:0 0 12px}
.db-variant-order{display:inline-block;color:#9a6558;text-decoration:none;font-size:13px;font-weight:700;border-bottom:1px solid #ae8174;margin-top:10px;padding-bottom:4px}
@media(max-width:900px){.db-variant-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.db-variants{margin-top:55px;padding-top:48px}.db-variant-grid{grid-template-columns:1fr;max-width:430px;margin:auto}}

/* V7 — de originele illustraties blijven zichtbaar tot de bezoeker over de kaart zweeft. */
.db-product-image-link .product-image{isolation:isolate}
.db-product-image-link .flower-corner{z-index:3;pointer-events:none}
.db-flip-scene{height:100%;width:100%;perspective:1100px}
.db-flip-inner{width:100%;height:100%;position:relative;transform-style:preserve-3d;transition:transform .7s cubic-bezier(.25,.7,.22,1)}
.db-flip-face{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden}
.db-flip-front{transform:rotateY(0deg)}
.db-flip-back{transform:rotateY(180deg)}
.db-product-image-link .db-flip-front img{width:100%;height:89%;object-fit:contain;transition:none}
.db-product-image-link .db-flip-back img{width:100%;height:100%;object-fit:cover;transition:none}
@media(hover:hover) and (pointer:fine){
 .db-product-image-link:hover .db-flip-inner,.db-product-image-link:focus-visible .db-flip-inner{transform:rotateY(180deg)}
 .db-product-image-link:hover img,.db-product-image-link:focus-visible img{transform:none}
}
@media(prefers-reduced-motion:reduce){.db-flip-inner{transition:none}}
