.elementor-kit-439{--e-global-color-primary:#141414;--e-global-color-secondary:#B5946B;--e-global-color-text:#454545;--e-global-color-accent:#92724D;--e-global-color-2322af6:#F6F6F6;--e-global-color-6e6af73:#B9B3B3;--e-global-color-2c1c08c:#FFFFFF;--e-global-color-55d7302:#FFFFFF00;--e-global-typography-primary-font-family:"Inter";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Inter";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Lora";--e-global-typography-accent-font-weight:500;--e-global-typography-f5ba1d1-font-family:"Inter";font-family:"Poppins", Sans-serif;font-size:18px;}.elementor-kit-439 button:hover,.elementor-kit-439 button:focus,.elementor-kit-439 input[type="button"]:hover,.elementor-kit-439 input[type="button"]:focus,.elementor-kit-439 input[type="submit"]:hover,.elementor-kit-439 input[type="submit"]:focus,.elementor-kit-439 .elementor-button:hover,.elementor-kit-439 .elementor-button:focus{background-color:var( --e-global-color-secondary );}.elementor-kit-439 e-page-transition{background-color:#FFBC7D;}.elementor-kit-439 p{margin-block-end:0px;}.elementor-kit-439 h1{color:var( --e-global-color-primary );font-family:"El Messiri", Sans-serif;font-size:48px;font-weight:600;line-height:1.18em;}.elementor-kit-439 h2{color:var( --e-global-color-primary );font-family:"El Messiri", Sans-serif;font-size:32px;font-weight:700;line-height:1.25em;}.elementor-kit-439 h3{color:var( --e-global-color-primary );font-family:"El Messiri", Sans-serif;font-size:16px;font-weight:700;line-height:1.3em;}.elementor-kit-439 h4{color:var( --e-global-color-primary );font-family:"El Messiri", Sans-serif;font-size:18px;font-weight:700;line-height:1.3em;}.elementor-kit-439 h5{color:var( --e-global-color-primary );font-family:"Poppins", Sans-serif;font-size:16px;font-weight:400;}.elementor-kit-439 h6{color:var( --e-global-color-primary );}.elementor-kit-439 button,.elementor-kit-439 input[type="button"],.elementor-kit-439 input[type="submit"],.elementor-kit-439 .elementor-button{font-family:"Poppins", Sans-serif;font-size:12px;text-transform:uppercase;border-radius:6px 6px 6px 6px;padding:12px 14px 12px 14px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1240px;}.e-con{--container-max-width:1240px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-439{font-size:16px;}.elementor-kit-439 h1{font-size:38px;}.elementor-kit-439 h2{font-size:28px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ===== Oak Field price block ===== */
.woocommerce ul.products li.product .price,
.price {
  --price-inset: 14px;          /* one source of truth for left alignment */
  --pill-bg: #FAF7F2;
  --pill-border: #E4DCCB;

  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
}

/* Shared row behaviour: number + label on one baseline */
.ws-price-sqm,
.ws-price-net,
.ws-price-gross {
  display: flex;
  align-items: baseline;
  gap: 5px;
  margin: 0;
}

/* Per-m² line (top, small muted) */
.ws-price-sqm {
  padding-left: var(--price-inset);
  font-size: 0.85em;
  color: #1a1a1a;
}

/* Ex VAT (the pill — headline price) */
.ws-price-net {
  padding: 8px var(--price-inset);
  font-size: 1.05em;
  font-weight: 600;
  color: #1a1a1a;
  background: var(--pill-bg);
  border: 1px solid var(--pill-border);
  border-radius: 8px;
  width: fit-content;
}

/* Inc VAT (bottom, small muted) */
.ws-price-gross {
  padding-left: var(--price-inset);
  font-size: 0.85em;
  font-weight: 400;
  color: #1a1a1a;
}

/* Labels: normal weight, slightly smaller */
.ws-price-sqm small,
.ws-price-net small,
.ws-price-gross small {
  font-size: 0.72em;
  font-weight: 400;
  color: #1a1a1a;
}

/* Stop WooCommerce's own price span from wrapping inside the flex row */
.ws-price-sqm .woocommerce-Price-amount,
.ws-price-net .woocommerce-Price-amount,
.ws-price-gross .woocommerce-Price-amount {
  white-space: nowrap;
}
/* ===== Oak Field Materials Calculator (hub) — matched to product calculator ===== */
.ofc{
  --cream:#FAF7F2;
  --border:#E4DCCB;
  --cream-deep:#F1EFE8;
  --charcoal:#444441;
  --muted:#8A8378;
  --rust:#A03D14;          /* match your ADD TO CART / product calculator */
  --rust-dark:#88330F;
  --rust-soft:rgba(160,61,20,.09);

  max-width:1040px; margin:0 auto;
  font-family:inherit; color:var(--charcoal);
}

/* ---- input card ---- */
.ofc-card{
  background:var(--cream);
  border:1px solid var(--border);
  border-radius:12px;
  padding:26px 28px;
}
.ofc-grid{ display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.ofc-field{ display:flex; flex-direction:column; }
.ofc-field:first-child{ grid-column:1 / -1; }
.ofc-field label{
  font-family:inherit; font-size:.68rem; font-weight:700; letter-spacing:.08em;
  text-transform:uppercase; color:var(--muted); margin-bottom:7px;
}
.ofc-field select,
.ofc-field input{
  height:52px; padding:0 15px; font-family:inherit; font-size:1rem; color:var(--charcoal);
  background:#fff; border:1px solid var(--border); border-radius:8px; box-sizing:border-box;
  transition:border-color .15s ease, box-shadow .15s ease;
}
.ofc-field select{
  appearance:none; -webkit-appearance:none; cursor:pointer; padding-right:44px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23A03D14' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:right 16px center;
}
.ofc-field select:focus,
.ofc-field input:focus{
  outline:none; border-color:var(--rust); box-shadow:0 0 0 3px var(--rust-soft);
}
.ofc-field input::placeholder{ color:#c4bcae; }

/* ---- calculate row ---- */
.ofc-actions{ display:flex; align-items:center; gap:16px; margin-top:22px; flex-wrap:wrap; }
.ofc-btn{
  height:52px; padding:0 34px; border:none; border-radius:8px;
  background:var(--rust); color:#fff; font-family:inherit; font-size:1rem; font-weight:700;
  letter-spacing:.02em; cursor:pointer; transition:background .15s ease;
}
.ofc-btn:hover{ background:var(--rust-dark); }
.ofc-btn:active, .ofc-btn:focus{ background:var(--rust-dark) !important; color:#fff !important; }
.ofc-area{
  font-size:.92rem; font-weight:700; color:var(--rust);
  background:var(--rust-soft); padding:7px 16px; border-radius:999px;
}

/* ---- results ---- */
.ofc-results{ margin-top:32px; }
.ofc-results-title{ font-family:inherit; font-size:1.4rem; color:var(--charcoal); margin:0 0 16px; }
.ofc-loading, .ofc-empty{
  color:var(--muted); background:var(--cream-deep);
  padding:16px 18px; border-radius:8px;
}

.ofc-item{
  display:grid; grid-template-columns:96px 1fr auto; gap:22px; align-items:center;
  background:#fff; border:1px solid var(--border); border-radius:12px;
  padding:18px 20px; margin-bottom:12px;
}
.ofc-item-media img{
  width:96px; height:96px; object-fit:cover; border-radius:8px; background:var(--cream-deep);
}
.ofc-item-name{ font-family:inherit; font-size:1.05rem; font-weight:600; color:var(--charcoal); text-decoration:none; line-height:1.3; }
.ofc-item-name:hover{ color:var(--rust); }
.ofc-item-sku{ font-size:.8rem; color:var(--muted); margin-top:5px; }
.ofc-item-cov{
  display:inline-block; margin-top:8px; font-size:.8rem; font-weight:700; color:var(--rust);
  background:var(--rust-soft); padding:4px 12px; border-radius:999px;
}
.ofc-item-calc{ text-align:right; }
.ofc-item-qty{ font-size:.78rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase; color:var(--muted); }
.ofc-item-total{ font-size:1.4rem; font-weight:700; color:var(--charcoal); margin:3px 0 12px; }
.ofc-item-total span{ font-size:.72rem; font-weight:400; color:var(--muted); }
.ofc-add{
  display:inline-block; background:var(--rust); color:#fff; text-decoration:none;
  padding:11px 24px; border-radius:8px; font-family:inherit; font-weight:700; letter-spacing:.02em;
  transition:background .15s ease;
}
.ofc-add:hover{ background:var(--rust-dark); color:#fff; }
.ofc-add:active, .ofc-add:focus{ background:var(--rust-dark) !important; color:#fff !important; }

/* ---- responsive ---- */
@media (max-width:680px){
  .ofc-card{ padding:22px 18px; }
  .ofc-grid{ grid-template-columns:1fr; }
  .ofc-actions{ flex-direction:column; align-items:stretch; }
  .ofc-btn{ width:100%; }
  .ofc-area{ text-align:center; }
  .ofc-item{ grid-template-columns:64px 1fr; gap:16px; }
  .ofc-item-media img{ width:64px; height:64px; }
  .ofc-item-calc{ grid-column:1 / -1; text-align:left; }
}


/* ===== Oak Field per-product calculator ===== */
.ofpc{
  /* palette — matches ex-VAT pill + ADD TO CART button */
  --cream:#FAF7F2;         /* card fill  (same as ex-VAT pill) */
  --border:#E4DCCB;        /* card border (same as ex-VAT pill) */
  --cream-deep:#F1EFE8;
  --charcoal:#444441;
  --muted:#8A8378;
  --rust:#A03D14;          /* ← your ADD TO CART red — fine-tune to exact hex */
  --rust-dark:#88330F;
  --rust-soft:rgba(160,61,20,.09);

  margin:24px 0;
  padding:24px 26px;
  background:var(--cream);
  border:1px solid var(--border);
  border-radius:12px;
  font-family:inherit;
  color:var(--charcoal);
  
}

/* header */
.ofpc-head{ display:flex; align-items:center; gap:13px; margin-bottom:20px; }
.ofpc-icon{
  flex:0 0 auto; width:38px; height:38px; border-radius:9px;
  display:flex; align-items:center; justify-content:center;
  background:#fff; border:1px solid var(--border); color:var(--rust);
}
.ofpc-title{ font-family:inherit; font-size:1.1rem; font-weight:700; color:var(--charcoal); line-height:1.25; }
.ofpc-sub{ font-size:.85rem; color:var(--muted); margin-top:2px; }

/* inputs */
.ofpc-fields{ display:flex; align-items:flex-end; gap:12px; flex-wrap:wrap; }
.ofpc-field{ display:flex; flex-direction:column; flex:1 1 100px; min-width:100px; }
.ofpc-field label{
  font-family:inherit; font-size:.68rem; font-weight:700; letter-spacing:.08em;
  text-transform:uppercase; color:var(--muted); margin-bottom:7px;
}
.ofpc-field input{
  height:48px; padding:0 15px; font-family:inherit; font-size:1rem; color:var(--charcoal);
  background:#fff; border:1px solid var(--border); border-radius:8px; box-sizing:border-box;
  transition:border-color .15s ease, box-shadow .15s ease;
}
.ofpc-field input:focus{
  outline:none; border-color:var(--rust); box-shadow:0 0 0 3px var(--rust-soft);
}
.ofpc-field input::placeholder{ color:#c4bcae; }
.ofpc-x{ padding-bottom:12px; color:var(--muted); font-size:1.05rem; font-weight:600; }

/* buttons — rust to match ADD TO CART */
.ofpc-btn{
  flex:0 0 auto; height:48px; padding:0 28px; border:none; border-radius:8px;
  background:var(--rust); color:#fff; font-family:inherit; font-size:.95rem; font-weight:700;
  letter-spacing:.02em; cursor:pointer; transition:background .15s ease;
}
.ofpc-btn:hover{ background:var(--rust-dark); }



/* result */
.ofpc-result{ margin-top:20px; padding-top:18px; border-top:1px solid var(--border); }
.ofpc-result-main{ display:flex; align-items:baseline; justify-content:space-between; gap:12px; flex-wrap:wrap; }
.ofpc-packs{
  font-size:1rem; font-weight:700; color:var(--rust);
  background:var(--rust-soft); padding:6px 14px; border-radius:999px;
}
.ofpc-total{ font-size:1.45rem; font-weight:700; color:var(--charcoal); }
.ofpc-area-note{ font-size:.84rem; color:var(--muted); margin-top:10px; }
.ofpc-add{
  display:block; text-align:center; margin-top:15px;
  background:var(--rust); color:#fff; text-decoration:none;
  padding:14px 20px; border-radius:8px; font-family:inherit; font-weight:700; letter-spacing:.02em;
  transition:background .15s ease;
}
.ofpc-add:hover{ background:var(--rust-dark); color:#fff; }
.ofpc-btn:active,
.ofpc-btn:focus,
.ofpc-add:active,
.ofpc-add:focus{
  background: var(--rust-dark) !important;
  color:#fff !important;
}

/* footnote */
.ofpc-coverage-note{ margin-top:16px; font-size:.78rem; color:var(--muted); }

/* responsive */
@media (max-width:480px){
  .ofpc{ padding:20px; }
  .ofpc-btn{ flex:1 1 100%; margin-top:4px; }
}

/* Product meta — show SKU only, hide category + tags */
.product_meta .posted_in,   /* categories */
.product_meta .tagged_as {  /* tags */
    display: none !important;
}

/* ===== SKU — exact clone of the ex-VAT price pill ===== */
.product_meta .sku_wrapper{
  display: flex;
  align-items: baseline;
  gap: 6px;
  width: fit-content;
  margin: 4px 0;
  padding: 8px 14px;
  background: #FAF7F2;
  border: 1px solid #E4DCCB;
  border-radius: 8px;

  /* "SKU :" label — smaller + muted */
  font-size: 0.8em;
  font-weight: 600;
  color: #8A8378;
  line-height: 1.2;
  white-space: nowrap;
}
/* the number — same size, bold charcoal (the hero) */
.product_meta .sku_wrapper .sku{
  font-size: 0.95em;
  font-weight: 700;
  color: #444441;
}

/* ===== Review tab — Inter font ===== */
/* Inter on review text + form, but NOT the star glyphs */
#reviews *:not(.star-rating):not(.star-rating *),
#review_form *:not(.star-rating):not(.star-rating *) {
  font-family: 'Inter', sans-serif !important;
}

/* review body ("test review", author, date) */
#reviews .comment-text p,
#reviews .comment-text {
  font-size: 1rem;
  color: #444441;
  line-height: 1.6;
}

/* "2 reviews for…" heading */
#reviews .woocommerce-Reviews-title {
  font-size: 1.6rem;
  color: #444441;
}

/* "Add a review" + field labels */
#review_form .comment-reply-title,
#review_form label {
  font-size: 1rem;
  color: #444441;
}

/* the textarea */
#review_form textarea {
  font-size: 1rem;
  color: #444441;
}

/* ===== Protect ALL star ratings from any font override (site-wide) ===== */
.star-rating,
.star-rating *,
.star-rating::before,
.woocommerce .star-rating,
.woocommerce .star-rating::before,
.woocommerce-product-rating .star-rating,
p.stars a,
#reviews .star-rating,
#reviews .star-rating::before {
  font-family: star !important;
}

/* ===== Global fonts: Inter general, Lora accent only ===== */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Lora:wght@400;500;600;700&display=swap');

/* General font → Inter (everything, including headings by default) */
body,
h1, h2, h3, h4, h5, h6,
p, span, a, li, td, th, label, input, textarea, select, button,
.elementor-widget-text-editor,
.elementor-heading-title,
.woocommerce {
  font-family: 'Inter', sans-serif;
}

/* Accent → Lora — ONLY applies where you deliberately add the class .accent-font */
.accent-font,
.accent-font * {
  font-family: 'Lora', serif;
}/* End custom CSS */