/* Oven & Crumb 1.0.8 — cake order form (printable-sheet look), contact page, footer contact column. */
.oc-site{--oc-pink:#f7dfdd;--oc-pink-line:#e8cdc9;--oc-rose:#c9655d}

/* ---------- Cake order form ---------- */
.oc-inner form.oc-order{max-width:1080px}
.oc-order{position:relative;margin:30px 0;padding:0 0 28px;background:#fff;border:1px solid var(--oc-pink-line);border-radius:8px;box-shadow:0 10px 30px #45230f10;overflow:hidden}
.oc-order-head{display:grid;grid-template-columns:96px 1fr auto;gap:22px;align-items:center;padding:24px 32px;background:var(--oc-pink)}
.oc-order-cake{width:96px!important;height:80px!important;color:#b8857b}
.oc-order-title{margin:0;font-family:Georgia,serif;font-size:40px;line-height:1.05;letter-spacing:.12em;text-transform:uppercase;color:#3a2723}
.oc-order-brand{margin:6px 0 0;font-family:Georgia,serif;font-style:italic;font-size:26px;color:var(--oc-rose)}
.oc-order-date{align-self:end;margin:0;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#7a5a4d}
.oc-order-date span{display:inline-block;min-width:130px;margin-left:6px;border-bottom:1px solid #b8857b;font-weight:400;letter-spacing:0;text-transform:none;color:#3a2723}

.oc-order-row{display:grid;margin:22px 28px 0}
.oc-order-row--top{grid-template-columns:1.6fr 1fr;gap:18px}
.oc-order-row--3{grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--oc-pink-line);border-top:0}
.oc-order-band+.oc-order-row--3{margin-top:0}
.oc-order-band{margin:26px 28px 0;padding:8px 12px;background:var(--oc-pink);border:1px solid var(--oc-pink-line);font-family:Georgia,serif;font-size:15px;font-weight:400;letter-spacing:.24em;text-align:center;text-transform:uppercase;color:#3a2723}
.oc-order-row--3:not(.oc-order-band+.oc-order-row--3){border-top:1px solid var(--oc-pink-line)}
.oc-order-box{padding:16px 18px;border:1px solid var(--oc-pink-line)}
.oc-order-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}

.oc-order label,.oc-order legend{display:block;font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#7a5a4d}
.oc-order label small{font-weight:400;text-transform:none;letter-spacing:0}
.oc-order label+label,.oc-order .oc-order-pair+label,.oc-order label+.oc-order-pair{margin-top:12px}
.oc-order input:not([type=checkbox]):not([type=radio]),.oc-order textarea{display:block;width:100%;margin-top:4px;padding:7px 2px;border:0;border-bottom:1px solid #d6b9b3;border-radius:0;background:transparent;color:#3a2723;font-size:14px;letter-spacing:0;text-transform:none;font-weight:400}
.oc-order textarea{padding:10px;border:1px solid #d6b9b3;border-radius:4px;background:#fffdfb;resize:vertical}
.oc-order input:focus,.oc-order textarea:focus{outline:none;border-color:var(--oc-rose);box-shadow:0 2px 0 -1px var(--oc-rose)}

.oc-order-group{min-width:0;margin:0;padding:14px 18px 16px;border:0;border-right:1px solid var(--oc-pink-line)}
.oc-order-group:last-child{border-right:0}
.oc-order-group legend{float:left;width:100%;margin:0 0 10px;padding:0;font-family:Georgia,serif;font-size:15px;font-weight:400;letter-spacing:.14em;color:var(--oc-rose)}
.oc-order-checks{clear:both;display:grid;gap:5px}
.oc-order-checks label{display:flex;align-items:center;gap:9px;margin:0!important;font-size:13px;font-weight:400;letter-spacing:0;text-transform:none;color:#3a2723;cursor:pointer}
.oc-order-checks input[type=checkbox],.oc-order-checks input[type=radio]{flex:none;appearance:none;-webkit-appearance:none;width:15px;height:15px;margin:0;border:1.5px solid #8a6a5c;border-radius:2px;background:#fff;display:grid;place-content:center;cursor:pointer}
.oc-order-checks input[type=radio]{border-radius:50%}
.oc-order-checks input:checked{border-color:var(--oc-rose);background:var(--oc-rose)}
.oc-order-checks input[type=checkbox]:checked::after{content:"";width:8px;height:4px;margin-top:-2px;border:2px solid #fff;border-top:0;border-right:0;transform:rotate(-45deg)}
.oc-order-checks input[type=radio]:checked::after{content:"";width:5px;height:5px;border-radius:50%;background:#fff}
.oc-order-checks input:focus-visible{outline:2px solid var(--oc-rose);outline-offset:2px}
.oc-order-checks .oc-order-other{margin:0 0 0 24px!important;padding:3px 2px!important;font-size:13px!important}
.oc-order-group>label{margin-top:4px}

.oc-order-notes{margin:22px 28px 0!important}
.oc-order .oc-consent{display:flex;gap:10px;align-items:flex-start;margin:18px 28px 0;font-size:12px;font-weight:400;letter-spacing:0;text-transform:none;color:#3a2723}
.oc-order-actions{display:flex;flex-wrap:wrap;gap:12px;margin:20px 28px 0}
.oc-order-submit{border:0;border-radius:5px;padding:13px 26px;background:var(--oc-chocolate);color:#fff;font-weight:700;font-size:14px}
.oc-order-submit:hover{background:#8d5034}
.oc-order-print{border:1px solid var(--oc-pink-line);border-radius:5px;padding:12px 20px;background:#fff;color:#7a5a4d;font-size:13px}
.oc-order-print:hover{border-color:var(--oc-rose);color:var(--oc-rose)}
.oc-order .oc-form-note{margin:12px 28px 0;font-size:12px}
.oc-order-done{margin:26px 0;padding:24px 28px;background:var(--oc-pink);border:1px solid var(--oc-pink-line);border-radius:8px}
.oc-order-done h2{margin:0 0 6px;font-size:26px}
.oc-order-done p{margin:0}

@media(max-width:860px){
	.oc-order-head{grid-template-columns:64px 1fr;padding:20px}
	.oc-order-cake{width:64px!important;height:54px!important}
	.oc-order-title{font-size:28px;letter-spacing:.08em}
	.oc-order-brand{font-size:20px}
	.oc-order-date{grid-column:1/-1}
	.oc-order-row,.oc-order-band,.oc-order-notes,.oc-order .oc-consent,.oc-order-actions,.oc-order .oc-form-note{margin-left:16px!important;margin-right:16px!important}
	.oc-order-row--top,.oc-order-row--3,.oc-order-pair{grid-template-columns:1fr}
	.oc-order-group{border-right:0;border-bottom:1px solid var(--oc-pink-line)}
	.oc-order-group:last-child{border-bottom:0}
	.oc-order-checks{grid-template-columns:1fr 1fr}
}

/* Print: just the blank form, in colour. */
@media print{
	@page{size:letter;margin:.35in}
	body.oc-site *{visibility:hidden}
	body.oc-site .oc-order,body.oc-site .oc-order *{visibility:visible}
	body.oc-site .oc-order{position:absolute;left:0;top:0;width:100%;max-width:none;margin:0;box-shadow:none;-webkit-print-color-adjust:exact;print-color-adjust:exact}
	body.oc-site .oc-order *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
	.oc-order-actions,.oc-order .oc-form-note,.oc-order .oc-consent,.oc-honeypot,#wpadminbar{display:none!important}
	.oc-order ::placeholder{color:transparent}
	.oc-order-row--3{grid-template-columns:repeat(3,1fr)!important}
	.oc-order-row--top{grid-template-columns:1.6fr 1fr!important}
	.oc-order-pair{grid-template-columns:1fr 1fr!important}
	.oc-order-group{border-right:1px solid var(--oc-pink-line)!important;border-bottom:0!important}
	.oc-order-checks{grid-template-columns:1fr!important;gap:3px}
	.oc-order-notes textarea{height:90px}
}

/* ---------- Contact page ---------- */
.oc-contact{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:40px;align-items:start;margin:24px 0 10px}
.oc-contact-card{padding:28px 30px;background:var(--oc-cream);border:1px solid var(--oc-line);border-radius:12px}
.oc-contact-line{margin:0 0 18px;font-size:15px}
.oc-contact-line span{display:block;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--oc-muted)}
.oc-contact-line a{color:var(--oc-chocolate);font-weight:700}
.oc-contact-line a.oc-contact-directions{font-size:13px;color:var(--oc-rose)}
.oc-contact-card h2,.oc-contact-form-wrap h2{margin:6px 0 12px;font-size:24px}
.oc-hours{width:100%;border-collapse:collapse;font-size:14px}
.oc-hours th,.oc-hours td{padding:7px 0;border-bottom:1px solid var(--oc-line);text-align:left;font-weight:400}
.oc-hours td{text-align:right;color:var(--oc-chocolate);font-weight:600}
.oc-contact-cake{margin:20px 0 0;font-size:13px}
.oc-contact-cake a{color:var(--oc-rose);font-weight:700}
.oc-inner form.oc-contact-form{max-width:none;margin:0;padding:22px 24px 24px}
.oc-contact-form label{margin-top:12px}
.oc-contact-form .oc-order-actions{margin:20px 0 0}
@media(max-width:860px){.oc-contact{grid-template-columns:1fr;gap:26px}}

/* ---------- Footer contact column ---------- */
.oc-footer .oc-footer-line{display:flex!important;gap:8px;align-items:flex-start;margin:0 0 8px;font-size:11px;line-height:1.55}
.oc-footer .oc-footer-line svg{width:15px;height:15px;margin-top:1px;color:var(--oc-rose)}
.oc-footer .oc-footer-contact{margin:6px 6px 0 0}
