/* Scope is a BODY class: Elementor 4.x strips _css_classes from containers\n   in this build, so the section-level class never reaches the DOM. */\n/* ============================================================
   BEACON CAPITAL - PRODUCT PAGE RFQ SECTION
   Scoped to body.bc-product-rfq only. Shared by every Marble and
   Granite product page. Does not touch Marble V2 or Granite V2
   rules, the header, the footer, or any other section.
   Palette: Deep Teal #024548 / Very Dark Teal #012F31 /
   Obsidian #070909 / Gold #D1AA6D / Ivory #F3EFE7 /
   Warm White #FCFAF6.
   ============================================================ */

/* ---- SECTION HEIGHT IS CONTENT-DRIVEN ----
   Elementor grid containers default to TWO rows when grid_rows_grid is not
   set, so this grid resolved to repeat(2,1fr): the info panel and form card
   both sat in row 1 and row 2 rendered empty at exactly the same height,
   adding 1262px of dead dark background before Similar Materials at 1440.
   grid_rows_grid is now 1 in the Elementor data (editor-correct); this rule
   is the shared guard, matching the approved V2 sections. Content decides
   the height - no fixed/viewport height anywhere. */
body.bc-product-rfq #bc-rfq-grid{--e-con-grid-template-rows:auto;grid-auto-rows:auto;align-items:stretch;min-height:0}
body.bc-product-rfq #bc-rfq-wrap{min-height:0}
body.bc-product-rfq #bc-rfq-grid > .e-con{height:100%}
body.bc-product-rfq #bc-rfq-info,
body.bc-product-rfq #bc-rfq-card{min-width:0}
body.bc-product-rfq #bc-rfq-card{box-shadow:0 24px 60px rgba(7,9,9,.28)}

/* left panel confidence points */
body.bc-product-rfq .bc-rfq-point .elementor-icon-box-wrapper{display:flex;align-items:flex-start;gap:12px}
body.bc-product-rfq .bc-rfq-point .elementor-icon-box-icon{margin:0;flex:0 0 auto;line-height:0;padding-top:2px}
body.bc-product-rfq .bc-rfq-point .elementor-icon-box-content{min-width:0}
body.bc-product-rfq #bc-rfq-current{border-radius:1px}

/* text editor paragraph reset inside this section */
body.bc-product-rfq .elementor-widget-text-editor p{margin:0}

/* ---- FORMINATOR FIELD STYLING ---- */
body.bc-product-rfq .forminator-ui#forminator-module-4154.forminator-design--default .forminator-row{margin-bottom:0}
body.bc-product-rfq .forminator-ui#forminator-module-4154 .forminator-field{margin-bottom:16px}
body.bc-product-rfq .forminator-ui#forminator-module-4154 .forminator-label{
  font-family:"Poppins",sans-serif !important;
  font-size:10.5px !important;font-weight:500 !important;
  letter-spacing:.14em !important;text-transform:uppercase !important;
  color:#012F31 !important;margin-bottom:7px !important;display:block !important}
body.bc-product-rfq .forminator-ui#forminator-module-4154 .forminator-required{color:#B4543F !important}

body.bc-product-rfq .forminator-ui#forminator-module-4154 input.forminator-input,
body.bc-product-rfq .forminator-ui#forminator-module-4154 textarea.forminator-textarea,
body.bc-product-rfq .forminator-ui#forminator-module-4154 .forminator-input-with-phone,
body.bc-product-rfq .forminator-ui#forminator-module-4154 .forminator-select2 .selection .select2-selection--single,
body.bc-product-rfq .forminator-ui#forminator-module-4154 select.forminator-select2{
  font-family:"Poppins",sans-serif !important;
  font-size:13.5px !important;font-weight:300 !important;
  color:#0E2A2B !important;
  background:#FFFFFF !important;
  border:1px solid rgba(2,69,72,.20) !important;
  border-radius:2px !important;
  min-height:48px !important;height:48px !important;
  padding:0 14px !important;
  box-shadow:none !important;
  transition:border-color .22s,box-shadow .22s}
body.bc-product-rfq .forminator-ui#forminator-module-4154 textarea.forminator-textarea{
  height:auto !important;min-height:112px !important;padding:13px 14px !important;line-height:1.6 !important}

body.bc-product-rfq .forminator-ui#forminator-module-4154 input.forminator-input:focus,
body.bc-product-rfq .forminator-ui#forminator-module-4154 textarea.forminator-textarea:focus,
body.bc-product-rfq .forminator-ui#forminator-module-4154 select.forminator-select2:focus{
  border-color:#D1AA6D !important;
  box-shadow:0 0 0 3px rgba(209,170,109,.16) !important;
  outline:none !important}

body.bc-product-rfq .forminator-ui#forminator-module-4154 ::placeholder{color:rgba(14,42,43,.42) !important;opacity:1}

/* select2 dropdown parity with inputs */
body.bc-product-rfq .forminator-ui#forminator-module-4154 .forminator-select2 .selection .select2-selection--single .select2-selection__rendered{
  line-height:46px !important;padding:0 !important;color:#0E2A2B !important;font-size:13.5px !important}
body.bc-product-rfq .forminator-ui#forminator-module-4154 .forminator-select2 .selection .select2-selection--single .select2-selection__arrow{height:46px !important;right:10px !important}

/* submit button - gold CTA */
body.bc-product-rfq .forminator-ui#forminator-module-4154 button.forminator-button-submit{
  font-family:"Poppins",sans-serif !important;
  font-size:12.5px !important;font-weight:500 !important;
  letter-spacing:2px !important;text-transform:uppercase !important;
  background:#D1AA6D !important;color:#0B0C0C !important;
  border:1px solid #D1AA6D !important;border-radius:2px !important;
  min-height:52px !important;padding:0 34px !important;
  transition:background .25s,border-color .25s,transform .25s}
body.bc-product-rfq .forminator-ui#forminator-module-4154 button.forminator-button-submit:hover{
  background:#D9AE63 !important;border-color:#D9AE63 !important;transform:translateY(-1px)}

/* validation + response messages */
body.bc-product-rfq .forminator-ui#forminator-module-4154 .forminator-error-message{
  font-family:"Poppins",sans-serif !important;font-size:11.5px !important;color:#B4543F !important}
body.bc-product-rfq .forminator-ui#forminator-module-4154 .forminator-response-message{
  font-family:"Poppins",sans-serif !important;font-size:13.5px !important;line-height:1.65 !important;
  background:rgba(2,69,72,.06) !important;border-left:2px solid #D1AA6D !important;
  color:#012F31 !important;padding:16px 18px !important;border-radius:2px !important}

/* ---- RESPONSIVE ---- */
@media (max-width:1024px){
  body.bc-product-rfq #bc-rfq-info{--padding-inline-start:34px;--padding-inline-end:34px}
  body.bc-product-rfq #bc-rfq-card{--padding-inline-start:32px;--padding-inline-end:32px}
}
/* stack to one column before the two halves become cramped */
@media (max-width:900px){
  body.bc-product-rfq #bc-rfq-grid{--e-con-grid-template-columns:minmax(0,1fr)}
  body.bc-product-rfq #bc-rfq-info{
    --border-block-end-width:0px;
    border-right-width:1px !important;border-bottom-width:0 !important}
  body.bc-product-rfq #bc-rfq-card{border-top-width:0 !important}
}
@media (max-width:760px){
  body.bc-product-rfq #bc-rfq-wrap{--padding-inline-start:20px;--padding-inline-end:20px}
  body.bc-product-rfq #bc-rfq-info{--padding-inline-start:26px;--padding-inline-end:26px;--padding-block-start:36px;--padding-block-end:36px}
  body.bc-product-rfq #bc-rfq-card{--padding-inline-start:24px;--padding-inline-end:24px;--padding-block-start:34px;--padding-block-end:34px}
  /* one clean column: no two narrow fields side by side */
  body.bc-product-rfq .forminator-ui#forminator-module-4154 .forminator-col{
    flex:0 0 100% !important;max-width:100% !important;width:100% !important}
  body.bc-product-rfq .forminator-ui#forminator-module-4154 button.forminator-button-submit{width:100% !important}
}
@media (max-width:480px){
  body.bc-product-rfq #bc-rfq-info{--padding-inline-start:20px;--padding-inline-end:20px}
  body.bc-product-rfq #bc-rfq-card{--padding-inline-start:18px;--padding-inline-end:18px}
}
@media (max-width:360px){
  body.bc-product-rfq #bc-rfq-wrap{--padding-inline-start:14px;--padding-inline-end:14px}
  body.bc-product-rfq #bc-rfq-info{--padding-inline-start:16px;--padding-inline-end:16px}
  body.bc-product-rfq #bc-rfq-card{--padding-inline-start:15px;--padding-inline-end:15px}
}

/* ---- HERO DOWNLOAD BUTTON PAIR ----
   "Download Company Profile" is much longer than "Request a Sample", so the
   pair needed 487px inside a 482px row and wrapped to two lines at desktop.
   Trimming horizontal padding 30px -> 24px restores the approved side-by-side
   placement. Type, colour, height, border and radius are untouched. */
body.bc-product-rfq #bc-hero-btn-quote .elementor-button,
body.bc-product-rfq #bc-hero-btn-sample .elementor-button,
body.bc-product-rfq #bc-mv2-hero-btn-quote .elementor-button,
body.bc-product-rfq #bc-mv2-hero-btn-sample .elementor-button{padding-left:24px;padding-right:24px;min-width:0}
/* below the point where both no longer fit, stack full width and stay touch friendly */
@media (max-width:560px){
  body.bc-product-rfq #bc-hero-btn-quote .elementor-button,
  body.bc-product-rfq #bc-hero-btn-sample .elementor-button,
  body.bc-product-rfq #bc-mv2-hero-btn-quote .elementor-button,
  body.bc-product-rfq #bc-mv2-hero-btn-sample .elementor-button{width:100%;min-width:0;height:52px}
  body.bc-product-rfq #bc-hero-btns,body.bc-product-rfq #bc-mv2-hero-btns{width:100%}
  body.bc-product-rfq #bc-hero-btn-quote,body.bc-product-rfq #bc-hero-btn-sample,
  body.bc-product-rfq #bc-mv2-hero-btn-quote,body.bc-product-rfq #bc-mv2-hero-btn-sample{width:100%}
}