/* ============================================================
   BEACON CAPITAL - STONE SOLUTIONS SHARED DESIGN SYSTEM
   ONE stylesheet for all 8 Stone Solutions pages.
   Replaces 8 near-duplicate per-page files (bc-kc/bv/rc/dt/st/wc/fl/os-polish.css,
   ~170KB total) that were scoped body.page-id-XXXX and inlined into wp_head.
   Scope: body.bc-stone-solution + #bc-stone-page (root _element_id, identical
   on every page - each page is its own document so the id stays unique).
   Built from the richest variant (Outdoor Solutions, 159 rules) so the three
   breadcrumb/eyebrow refinements that only wc/fl/os had are now shared by all.
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Poppins:wght@300;400;500;600&display=swap');
#bc-stone-page{--gold:#D1AA6D;--obsidian:#070909;--carbon:#111414;--deepteal:#024548;--teal:#025B5A;--ivory:#F3EFE7;--warm:#FCFAF6;--bc-border:rgba(209,170,109,.32);--cw:1320px;--sec:clamp(64px,7vw,108px);width:100%;max-width:100%;overflow-x:clip;font-family:'Poppins',system-ui,sans-serif;}
#bc-stone-page *{box-sizing:border-box;}
/* Kill Astra narrow content cap on THIS page only, so sections go full width */
body.bc-stone-solution #content .ast-container{max-width:100%!important;width:100%!important;padding-left:0!important;padding-right:0!important;}
body.bc-stone-solution #content{padding-top:0!important;padding-bottom:0!important;}
body.bc-stone-solution [data-elementor-type="wp-page"],body.bc-stone-solution [data-elementor-type="wp-page"] > .elementor-section-wrap,body.bc-stone-solution .ast-container > .elementor{width:100%!important;max-width:100%!important;}
#bc-stone-page > .e-con-inner{max-width:100%!important;width:100%!important;padding:0!important;}
#bc-stone-page > .elementor-element{padding:0!important;}
#bc-stone-page [id$="-inner"]{width:min(calc(100% - 48px),var(--cw));margin-inline:auto!important;padding-inline:0!important;}
#bc-solution-hero > [id$="-inner"]{width:min(calc(100% - 48px),1380px);}
/* ---------- ICONS: force brand gold everywhere (fix blue/cyan) ---------- */
#bc-stone-page .elementor-icon{color:var(--gold)!important;}
#bc-stone-page .elementor-icon svg,#bc-stone-page .elementor-icon-box-icon svg,#bc-stone-page .elementor-icon i,#bc-stone-page .elementor-icon-box-icon i{fill:var(--gold)!important;color:var(--gold)!important;}
/* ---------- section backgrounds ---------- */
#bc-solution-hero{background:var(--obsidian);}#bc-solution-trust{background:var(--carbon);}#bc-solution-intro{background:var(--ivory);}#bc-solution-materials{background:var(--obsidian);}#bc-solution-options{background:var(--ivory);}#bc-solution-configurations{background:var(--obsidian);}#bc-solution-process{background:var(--carbon);}#bc-solution-export{background:var(--ivory);}#bc-solution-projects{background:var(--obsidian);}#bc-solution-faq{background:var(--carbon);}#bc-related-solutions{background:var(--obsidian);}
#bc-stone-page :is(#bc-solution-trust,#bc-solution-intro,#bc-solution-materials,#bc-solution-options,#bc-solution-configurations,#bc-solution-process,#bc-solution-export,#bc-solution-projects,#bc-solution-faq,#bc-related-solutions) > [id$="-inner"]{padding-block:var(--sec)!important;}
#bc-solution-hero > [id$="-inner"]{padding-block:clamp(44px,5vw,68px)!important;}
#bc-stone-page :is(#bc-solution-hero,#bc-solution-trust,#bc-solution-materials,#bc-solution-configurations,#bc-solution-process,#bc-solution-projects,#bc-solution-faq,#bc-related-solutions){color:var(--warm);}
#bc-stone-page :is(#bc-solution-hero,#bc-solution-trust,#bc-solution-materials,#bc-solution-configurations,#bc-solution-process,#bc-solution-projects,#bc-related-solutions) .elementor-widget-text-editor{color:#cfcac2;}
#bc-stone-page :is(#bc-solution-intro,#bc-solution-options,#bc-solution-export){color:var(--obsidian);}
#bc-stone-page :is(#bc-solution-intro,#bc-solution-options,#bc-solution-export) .elementor-widget-text-editor{color:#39332c;}
/* ---------- typography (scaled up) ---------- */
#bc-stone-page h1.elementor-heading-title{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:clamp(46px,5vw,78px);line-height:.98;color:var(--gold);margin:0;text-wrap:balance;}
#bc-stone-page h2.elementor-heading-title{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:clamp(32px,3.7vw,56px);line-height:1.06;margin:0;text-wrap:balance;}
#bc-stone-page h3.elementor-heading-title{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:clamp(20px,1.7vw,25px);line-height:1.15;margin:0;}
#bc-stone-page :is(#bc-solution-materials,#bc-solution-configurations,#bc-solution-process,#bc-solution-projects,#bc-related-solutions,#bc-solution-faq) h2.elementor-heading-title{color:var(--warm);}
#bc-stone-page .elementor-widget-text-editor{font-family:'Poppins',sans-serif;font-size:clamp(15.5px,1.05vw,17.5px);line-height:1.72;}
#bc-stone-page [id$="-eyebrow"] .elementor-heading-title{font-family:'Poppins',sans-serif;text-transform:uppercase;letter-spacing:3px;font-size:clamp(12px,1vw,14px);font-weight:500;color:var(--gold);margin:0;}
#bc-hero-sub .elementor-heading-title{font-family:'Cormorant Garamond',serif;font-size:clamp(20px,2vw,27px);color:var(--gold);font-weight:500;font-style:italic;margin:4px 0 0;}
#bc-stone-page .bc-crumb{font-family:'Poppins',sans-serif;font-size:12.5px;letter-spacing:1.5px;text-transform:uppercase;color:#8f8a80;}
/* ---------- buttons ---------- */
#bc-stone-page .elementor-button{font-family:'Poppins',sans-serif;text-transform:uppercase;letter-spacing:1.4px;font-size:14px;font-weight:500;padding:16px 34px;border-radius:2px;min-height:52px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--gold);transition:all .25s ease;}
#bc-stone-page .elementor-button:focus-visible{outline:2px solid var(--gold);outline-offset:3px;}
#bc-hero-btns{display:flex;gap:16px;flex-wrap:wrap;margin-top:8px;}
#bc-hero-btns > .elementor-element:first-child .elementor-button{background:var(--gold);color:var(--obsidian);}
#bc-hero-btns > .elementor-element:first-child .elementor-button:hover{filter:brightness(1.08);}
#bc-hero-btns > .elementor-element:nth-child(2) .elementor-button{background:transparent;color:var(--gold);}
#bc-hero-btns > .elementor-element:nth-child(2) .elementor-button:hover{background:rgba(209,170,109,.12);}
/* ---------- HERO ---------- */
#bc-hero-grid{display:grid;grid-template-columns:minmax(0,.68fr) minmax(0,1.02fr);gap:clamp(48px,5vw,72px);align-items:center;min-height:clamp(620px,68vh,700px);}
#bc-hero-text{display:flex;flex-direction:column;gap:16px;max-width:560px;}
#bc-hero-media{position:relative;}
#bc-hero-media img{width:100%;height:100%;min-height:clamp(420px,46vw,600px);object-fit:cover;display:block;border-radius:4px;}
#bc-hero-badge{position:absolute;right:20px;bottom:20px;background:rgba(7,9,9,.74);border:1px solid rgba(209,170,109,.5);border-radius:3px;padding:14px 18px;}
#bc-hero-badge .elementor-icon-box-wrapper{display:flex;gap:12px;align-items:center;text-align:left;}
#bc-hero-badge .elementor-icon-box-icon{margin:0;}
#bc-hero-badge .elementor-icon-box-icon svg{width:24px;height:24px;}
#bc-hero-badge .elementor-icon-box-title{font-family:'Poppins';font-size:12.5px;letter-spacing:1px;color:var(--warm);margin:0;}
#bc-hero-badge .elementor-icon-box-description{font-family:'Poppins';font-size:11.5px;letter-spacing:1px;color:var(--gold);}
/* ---------- TRUST ---------- */
#bc-trust-grid{display:grid;grid-template-columns:repeat(4,1fr);}
#bc-trust-grid > .elementor-element{padding:12px clamp(20px,2.2vw,36px);border-right:1px solid rgba(209,170,109,.20);}
#bc-trust-grid > .elementor-element:last-child{border-right:none;}
#bc-trust-grid .elementor-icon-box-wrapper{display:flex;align-items:flex-start;gap:16px;text-align:left;}
#bc-trust-grid .elementor-icon-box-icon{margin:0;}
#bc-trust-grid .elementor-icon-box-icon svg{width:38px;height:38px;}
#bc-trust-grid .elementor-icon-box-title{font-family:'Poppins';font-size:15px;letter-spacing:1px;color:var(--gold);text-transform:uppercase;margin-bottom:7px;}
#bc-trust-grid .elementor-icon-box-description{font-size:14px;color:#c2bdb5;line-height:1.5;}
/* ---------- INTRO ---------- */
#bc-intro-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,4.5vw,72px);align-items:center;}
#bc-intro-media img{width:100%;height:100%;min-height:clamp(360px,42vw,520px);object-fit:cover;border-radius:4px;display:block;}
#bc-intro-content{display:flex;flex-direction:column;gap:15px;}
#bc-intro-content h2.elementor-heading-title{color:var(--obsidian);}
#bc-stone-page .bc-check{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:11px;}
#bc-stone-page .bc-check li{position:relative;padding-left:30px;font-size:15.5px;line-height:1.5;}
#bc-stone-page .bc-check li::before{content:"\2713";position:absolute;left:0;top:0;color:var(--gold);font-weight:700;font-size:16px;}
/* ---------- MATERIALS: 3 per row ---------- */
#bc-mat-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:30px;flex-wrap:wrap;gap:10px;}
#bc-mat-head a{color:var(--gold);font-family:'Poppins';font-size:13.5px;letter-spacing:1.5px;text-transform:uppercase;text-decoration:none;}
#bc-mat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;align-items:stretch;}
#bc-mat-grid > .elementor-element{background:var(--carbon);border:1px solid var(--bc-border);border-radius:5px;overflow:hidden;display:flex;flex-direction:column;height:100%;}
#bc-mat-grid > .elementor-element img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;}
#bc-mat-grid > .elementor-element > .elementor-element:first-child a{display:block;}
#bc-mat-grid > .elementor-element > .elementor-element:nth-child(2){display:flex;flex-direction:column;flex:1 1 auto;padding:22px;gap:6px;}
#bc-mat-grid h3.elementor-heading-title{color:var(--warm);}
#bc-mat-grid h3.elementor-heading-title a{color:inherit;text-decoration:none;}
#bc-mat-grid h3.elementor-heading-title a:hover{color:var(--gold);}
#bc-mat-grid p.elementor-heading-title{font-family:'Poppins';font-size:11.5px;letter-spacing:1.5px;text-transform:uppercase;color:var(--gold);margin:0;}
#bc-mat-grid .elementor-widget-text-editor{font-size:14px;color:#b8b3ab;line-height:1.55;}
#bc-mat-grid > .elementor-element > .elementor-element:nth-child(2) > .elementor-element:last-child{margin-top:auto;padding-top:14px;}
#bc-mat-grid > .elementor-element > .elementor-element:nth-child(2) > .elementor-element:last-child a{color:var(--gold)!important;font-family:'Poppins';font-size:13px;letter-spacing:1px;text-transform:uppercase;text-decoration:none;}
#bc-mat-grid a:focus-visible{outline:2px solid var(--gold);outline-offset:2px;}
/* ---------- OPTIONS + TECH ---------- */
#bc-options-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(36px,4vw,64px);align-items:start;}
#bc-opt-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:20px 28px;margin-top:24px;}
#bc-opt-cards .elementor-icon-box-wrapper{display:flex;gap:14px;align-items:flex-start;text-align:left;}
#bc-opt-cards .elementor-icon-box-icon{margin:0;}
#bc-opt-cards .elementor-icon-box-icon svg{width:26px;height:26px;}
#bc-opt-cards .elementor-icon-box-title{font-family:'Poppins';font-size:15px;letter-spacing:.5px;color:var(--obsidian);text-transform:uppercase;margin-bottom:3px;}
#bc-opt-cards .elementor-icon-box-description{font-size:13.5px;color:#5a544c;line-height:1.45;}
#bc-options-right{background:var(--warm);border:1px solid var(--bc-border);border-radius:6px;padding:clamp(24px,2.4vw,36px);}
#bc-stone-page .bc-tech{width:100%;border-collapse:collapse;margin-top:14px;}
#bc-stone-page .bc-tech th{text-align:left;font-family:'Poppins';font-weight:500;font-size:13.5px;letter-spacing:.5px;text-transform:uppercase;color:var(--obsidian);padding:13px 14px 13px 0;width:46%;vertical-align:top;border-bottom:1px solid rgba(7,9,9,.12);}
#bc-stone-page .bc-tech td{font-size:14.5px;color:#4a453d;padding:13px 0;border-bottom:1px solid rgba(7,9,9,.12);line-height:1.5;}
#bc-stone-page .bc-note{font-size:13px;color:#7a746b;font-style:italic;margin-top:14px;}
/* ---------- CONFIGURATIONS: 3 per row ---------- */
#bc-conf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:28px;}
#bc-conf-grid > .elementor-element{border:1px solid rgba(209,170,109,.22);border-radius:5px;overflow:hidden;background:var(--carbon);}
#bc-conf-grid img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;}
#bc-conf-grid h3.elementor-heading-title{font-family:'Poppins';font-weight:400;font-size:14.5px;letter-spacing:.5px;text-transform:uppercase;color:var(--warm);text-align:center;padding:16px 8px;}
/* ---------- PROCESS ---------- */
#bc-proc-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:18px;margin-top:32px;}
#bc-proc-grid > .elementor-element{text-align:center;padding:0 8px;position:relative;}
#bc-proc-grid > .elementor-element > .elementor-element:first-child .elementor-heading-title{width:66px;height:66px;margin:0 auto 16px;border:1.5px solid var(--gold);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Poppins';font-size:21px;color:var(--gold);}
#bc-proc-grid h3.elementor-heading-title{font-family:'Poppins';font-size:14px;letter-spacing:.5px;text-transform:uppercase;color:var(--gold);margin-bottom:8px;}
#bc-proc-grid .elementor-widget-text-editor{font-size:13px;color:#b6b0a8;line-height:1.5;}
#bc-proc-grid > .elementor-element:not(:last-child)::after{content:"";position:absolute;top:33px;right:-9px;width:18px;height:1px;background:rgba(209,170,109,.55);}
/* ---------- EXPORT ---------- */
#bc-export-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.0fr);gap:clamp(40px,5vw,76px);align-items:center;}
#bc-export-content{display:flex;flex-direction:column;gap:15px;}
#bc-export-content h2.elementor-heading-title{color:var(--obsidian);}
#bc-export-media img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:5px;border:1px solid var(--bc-border);display:block;}
#bc-stone-page .bc-arrow-link{color:var(--gold);font-family:'Poppins';font-size:13.5px;letter-spacing:1.2px;text-transform:uppercase;text-decoration:none;}
/* ---------- INSPIRATION ---------- */
#bc-proj-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:28px;flex-wrap:wrap;gap:10px;}
#bc-proj-head a{color:var(--gold);font-family:'Poppins';font-size:13.5px;letter-spacing:1.5px;text-transform:uppercase;text-decoration:none;}
#bc-proj-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
#bc-proj-grid > .elementor-element{border:1px solid rgba(209,170,109,.24);border-radius:5px;overflow:hidden;}
#bc-proj-grid img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;}
/* ---------- FAQ + CTA ---------- */
#bc-faq-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(36px,4vw,60px);align-items:start;}
#bc-faq-left{display:flex;flex-direction:column;gap:18px;}
#bc-faq-acc .elementor-accordion-item{border:1px solid rgba(209,170,109,.2)!important;margin-bottom:12px;border-radius:5px;overflow:hidden;background:rgba(255,255,255,.02);}
#bc-faq-acc .elementor-tab-title{font-family:'Poppins'!important;font-size:16px!important;color:var(--warm)!important;padding:18px 22px!important;}
#bc-faq-acc .elementor-tab-title.elementor-active{color:var(--gold)!important;}
#bc-faq-acc .elementor-tab-content{color:#c2bdb5!important;font-size:14.5px;line-height:1.65;padding:0 22px 18px!important;background:transparent!important;border:none!important;}
#bc-faq-acc .elementor-accordion-icon,#bc-faq-acc .elementor-accordion-icon svg{color:var(--gold)!important;fill:var(--gold)!important;}
#bc-faq-acc .elementor-tab-title:focus-visible{outline:2px solid var(--gold);outline-offset:-2px;}
#bc-cta-panel{background:var(--deepteal);border-radius:8px;padding:clamp(32px,3.2vw,50px);display:flex;flex-direction:column;gap:16px;}
#bc-cta-panel h2.elementor-heading-title{color:var(--warm);}
#bc-cta-panel .elementor-widget-text-editor{color:#dbe6e4;}
#bc-cta-btns{display:flex;flex-direction:column;gap:13px;margin-top:8px;}
#bc-cta-btns .elementor-button{width:100%;}
#bc-cta-btns > .elementor-element:first-child .elementor-button{background:var(--gold);color:var(--obsidian);border-color:var(--gold);}
#bc-cta-btns > .elementor-element:not(:first-child) .elementor-button{background:transparent;color:var(--warm);border-color:rgba(255,255,255,.4);}
#bc-cta-btns > .elementor-element:not(:first-child) .elementor-button:hover{border-color:var(--gold);color:var(--gold);}
#bc-cta-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:10px;}
#bc-cta-trust .elementor-icon-box-wrapper{text-align:center;}
#bc-cta-trust .elementor-icon-box-icon svg{width:22px;height:22px;}
#bc-cta-trust .elementor-icon-box-title{font-family:'Poppins';font-size:12.5px;color:var(--warm);letter-spacing:.5px;margin-top:7px;}
#bc-cta-trust .elementor-icon-box-description{font-size:11.5px;color:#c2d2d0;}
/* ---------- RELATED (4 per row, with description + VIEW SOLUTION) ---------- */
#bc-rel-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;align-items:stretch;margin-top:22px;}
#bc-rel-grid > .elementor-element{display:flex;flex-direction:column;height:100%;background:var(--carbon);border:1px solid var(--bc-border);border-radius:5px;overflow:hidden;}
#bc-rel-grid img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;}
#bc-rel-grid > .elementor-element > .elementor-element:last-child{display:flex;flex-direction:column;flex:1 1 auto;padding:18px;gap:6px;}
#bc-rel-grid h3.elementor-heading-title{font-size:19px;color:var(--warm);}
#bc-rel-grid h3.elementor-heading-title a{color:inherit;text-decoration:none;}#bc-rel-grid h3.elementor-heading-title a:hover{color:var(--gold);}
#bc-rel-grid .elementor-widget-text-editor{font-size:13px;color:#b3aea6;line-height:1.5;}
#bc-rel-grid > .elementor-element > .elementor-element:last-child > .elementor-element:last-child{margin-top:auto;padding-top:12px;}
#bc-rel-grid > .elementor-element > .elementor-element:last-child > .elementor-element:last-child a{color:var(--gold)!important;font-family:'Poppins';font-size:12.5px;letter-spacing:1px;text-transform:uppercase;text-decoration:none;}
#bc-rel-grid a:focus-visible{outline:2px solid var(--gold);outline-offset:2px;}
/* ---------- UNIFIED CARD HOVER ---------- */
#bc-stone-page :is(#bc-mat-grid,#bc-conf-grid,#bc-proj-grid,#bc-rel-grid) > .elementor-element{transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease;}
#bc-stone-page :is(#bc-mat-grid,#bc-conf-grid,#bc-proj-grid,#bc-rel-grid) > .elementor-element:hover{transform:translateY(-5px);border-color:rgba(209,170,109,.72);box-shadow:0 16px 38px -20px rgba(0,0,0,.85);}
#bc-stone-page :is(#bc-mat-grid,#bc-conf-grid,#bc-proj-grid) img{transition:transform .35s ease;}
#bc-stone-page :is(#bc-mat-grid,#bc-conf-grid,#bc-proj-grid) > .elementor-element:hover img{transform:scale(1.03);}
@media (prefers-reduced-motion:reduce){#bc-stone-page *,#bc-stone-page *::before,#bc-stone-page *::after{transition:none!important;animation:none!important;}#bc-stone-page :is(#bc-mat-grid,#bc-conf-grid,#bc-proj-grid,#bc-rel-grid) > .elementor-element:hover{transform:none;}#bc-stone-page :is(#bc-mat-grid,#bc-conf-grid,#bc-proj-grid) > .elementor-element:hover img{transform:none;}}
/* ---------- RESPONSIVE ---------- */
@media (max-width:1180px){#bc-proc-grid{grid-template-columns:repeat(3,1fr);row-gap:34px;}#bc-proc-grid > .elementor-element::after{display:none;}#bc-rel-grid{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media (max-width:1024px){#bc-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:36px;min-height:0;}#bc-trust-grid{grid-template-columns:repeat(2,1fr);}#bc-trust-grid > .elementor-element:nth-child(2){border-right:none;}#bc-trust-grid > .elementor-element:nth-child(1),#bc-trust-grid > .elementor-element:nth-child(2){border-bottom:1px solid rgba(209,170,109,.18);padding-bottom:22px;}#bc-options-grid{grid-template-columns:1fr;gap:36px;}#bc-faq-grid{grid-template-columns:1fr;gap:36px;}#bc-mat-grid{grid-template-columns:repeat(2,minmax(0,1fr));}#bc-conf-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:767px){#bc-hero-grid{grid-template-columns:1fr;gap:28px;}#bc-hero-text{order:1;}#bc-hero-media{order:2;}#bc-intro-grid{grid-template-columns:1fr;gap:26px;}#bc-intro-media{order:2;}#bc-intro-content{order:1;}#bc-export-grid{grid-template-columns:1fr;gap:26px;}#bc-export-content{order:1;}#bc-export-media{order:2;}#bc-proc-grid{grid-template-columns:1fr;gap:22px;}#bc-proj-grid{grid-template-columns:1fr;}#bc-trust-grid{grid-template-columns:1fr;}#bc-trust-grid > .elementor-element{border-right:none;border-bottom:1px solid rgba(209,170,109,.18);padding-block:18px;}#bc-opt-cards{grid-template-columns:1fr;}#bc-rel-grid{grid-template-columns:repeat(2,minmax(0,1fr));}#bc-cta-trust{grid-template-columns:1fr;}#bc-hero-btns .elementor-button,#bc-cta-btns .elementor-button{width:100%;}#bc-mat-head,#bc-proj-head{flex-direction:column;align-items:flex-start;}#bc-proc-grid > .elementor-element > .elementor-element:first-child .elementor-heading-title{margin-bottom:10px;}}
@media (max-width:430px){#bc-mat-grid{grid-template-columns:1fr;}#bc-conf-grid{grid-template-columns:1fr;}#bc-rel-grid{grid-template-columns:1fr;}}
/* Wall Cladding specific: linked breadcrumb keeps the approved crumb appearance */
#bc-stone-page .bc-crumb a{color:inherit;text-decoration:none;}
#bc-stone-page .bc-crumb a:hover,#bc-stone-page .bc-crumb a:focus-visible{color:var(--gold);}
/* Wall Cladding specific: two-line eyebrows */
#bc-stone-page #bc-mat-eyebrow,#bc-stone-page #bc-proj-eyebrow{line-height:1.55;}


/* ================= UNIFIED SYSTEM REFINEMENTS ================= */

/* 1. SECTION SEAMS. The Elementor root container is flex-column with a
   default row-gap:20px, and its own background is transparent. With 11
   sections alternating obsidian / carbon / ivory, that produced ten 20px
   bands of page background between sections (200px of unintended banding)
   and broke every section transition. Sections own their spacing via their
   inner padding, so the gap must be zero. */
body.bc-stone-solution #bc-stone-page{row-gap:0;gap:0}
body.bc-stone-solution #bc-stone-page > .e-con{margin-block:0}

/* 2. HERO CTA PAIR. #bc-hero-btns was flex-direction:column, stacking the
   two CTAs at desktop inside a 495px column. Side by side on desktop,
   stacked full-width only where the row genuinely runs out of space. */
body.bc-stone-solution #bc-hero-btns{flex-direction:row;flex-wrap:wrap;align-items:center;column-gap:14px;row-gap:12px}
@media (max-width:560px){
  body.bc-stone-solution #bc-hero-btns{flex-direction:column;align-items:stretch}
  body.bc-stone-solution #bc-hero-btns .elementor-button{width:100%;justify-content:center}
}

/* 3. HERO BADGE. Absolutely positioned at 772px wide, it overran the hero
   image right edge. Pin it inside the media frame instead. */
body.bc-stone-solution #bc-hero-media{position:relative}
body.bc-stone-solution #bc-hero-badge{position:absolute;left:0;right:auto;bottom:0;width:auto;max-width:min(78%,340px)}
@media (max-width:600px){
  body.bc-stone-solution #bc-hero-badge{position:static;max-width:100%;width:100%}
}

/* ============================================================
   STONE SOLUTIONS - PREMIUM REFINEMENT PASS
   Refinement only: no structural change, no content change.
   Measured against the live master before writing.
   ============================================================ */

/* --- unified design tokens: radii were inconsistent (cards 5px,
     CTA panel 8px). One scale, one shadow ramp, one hover curve. --- */
body.bc-stone-solution #bc-stone-page{
  --r-sm:3px;--r:5px;--r-lg:5px;
  --sh-1:0 2px 10px rgba(0,0,0,.16);
  --sh-2:0 18px 44px rgba(0,0,0,.30);
  --sh-warm:0 18px 44px rgba(7,9,9,.16);
  --ease:cubic-bezier(.22,.61,.36,1);
}

/* --- SECTION FLOW: a hairline gold rule at every dark/light boundary so
     sections read as one continuous document rather than stacked blocks. --- */
body.bc-stone-solution #bc-stone-page > .e-con{position:relative}
body.bc-stone-solution #bc-solution-trust::before,
body.bc-stone-solution #bc-solution-intro::before,
body.bc-stone-solution #bc-solution-materials::before,
body.bc-stone-solution #bc-solution-options::before,
body.bc-stone-solution #bc-solution-configurations::before,
body.bc-stone-solution #bc-solution-process::before,
body.bc-stone-solution #bc-solution-export::before,
body.bc-stone-solution #bc-solution-projects::before,
body.bc-stone-solution #bc-solution-faq::before,
body.bc-stone-solution #bc-related-solutions::before{
  content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);
  width:min(1320px,calc(100% - 64px));height:1px;
  background:linear-gradient(90deg,transparent,rgba(209,170,109,.28) 18%,rgba(209,170,109,.28) 82%,transparent);
  pointer-events:none;z-index:3}

/* --- HERO: tighter title-to-subtitle lockup, CTAs that stay on one row
     down to tablet (they wrapped at 1280/1024 before). --- */
body.bc-stone-solution #bc-hero-btns .elementor-button{
  letter-spacing:1.6px;padding-left:26px;padding-right:26px;
  transition:background-color .28s var(--ease),color .28s var(--ease),border-color .28s var(--ease),transform .28s var(--ease),box-shadow .28s var(--ease)}
body.bc-stone-solution #bc-hero-btns .elementor-button:hover{transform:translateY(-2px);box-shadow:var(--sh-1)}
@media (min-width:601px){body.bc-stone-solution #bc-hero-btns{flex-wrap:nowrap}}

/* --- TRUST / BENEFITS STRIP: was transparent with 12px padding and a bare
     divider, so it read as flat text. More presence, larger icons. --- */
body.bc-stone-solution #bc-trust-grid > *{padding-top:22px;padding-bottom:22px;transition:background-color .3s var(--ease)}
body.bc-stone-solution #bc-trust-grid > *:hover{background:rgba(209,170,109,.05)}
body.bc-stone-solution #bc-trust-grid svg,body.bc-stone-solution #bc-trust-grid i{width:26px;height:26px;font-size:26px}
body.bc-stone-solution #bc-trust-grid .elementor-icon-box-icon{margin-bottom:12px}

/* --- CARD SYSTEM: one hover language for material, gallery and related
     cards - lift, gold border, warm shadow, slow image push-in. --- */
body.bc-stone-solution #bc-mat-grid > *,
body.bc-stone-solution #bc-proj-grid > *,
body.bc-stone-solution #bc-conf-grid > *,
body.bc-stone-solution #bc-rel-grid > *{
  border-radius:var(--r);overflow:hidden;
  transition:transform .4s var(--ease),border-color .4s var(--ease),box-shadow .4s var(--ease)}
body.bc-stone-solution #bc-mat-grid > *:hover,
body.bc-stone-solution #bc-proj-grid > *:hover,
body.bc-stone-solution #bc-conf-grid > *:hover,
body.bc-stone-solution #bc-rel-grid > *:hover{
  transform:translateY(-5px);border-color:rgba(209,170,109,.62);box-shadow:var(--sh-2)}
body.bc-stone-solution #bc-mat-grid img,
body.bc-stone-solution #bc-proj-grid img,
body.bc-stone-solution #bc-conf-grid img,
body.bc-stone-solution #bc-rel-grid img{transition:transform .7s var(--ease);will-change:transform}
body.bc-stone-solution #bc-mat-grid > *:hover img,
body.bc-stone-solution #bc-proj-grid > *:hover img,
body.bc-stone-solution #bc-conf-grid > *:hover img,
body.bc-stone-solution #bc-rel-grid > *:hover img{transform:scale(1.045)}

/* --- RELATED SOLUTIONS: every page has exactly 7 siblings, which left an
     orphan cell in a 4-column grid. Flex wrap centres the trailing row. --- */
body.bc-stone-solution #bc-rel-grid{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:22px}
body.bc-stone-solution #bc-rel-grid > *{flex:0 0 calc((100% - 66px)/4);max-width:calc((100% - 66px)/4)}
body.bc-stone-solution #bc-rel-grid > *{align-self:stretch;height:auto}
body.bc-stone-solution #bc-rel-grid > * > .e-con-inner{height:100%;display:flex;flex-direction:column}
@media (max-width:1024px){body.bc-stone-solution #bc-rel-grid > *{flex:0 0 calc((100% - 44px)/3);max-width:calc((100% - 44px)/3)}}
@media (max-width:768px){body.bc-stone-solution #bc-rel-grid > *{flex:0 0 calc((100% - 22px)/2);max-width:calc((100% - 22px)/2)}}
@media (max-width:520px){body.bc-stone-solution #bc-rel-grid > *{flex:0 0 100%;max-width:100%}}

/* --- EXPORT SECTION: frame the photograph intentionally instead of letting
     it float against the ivory background. --- */
body.bc-stone-solution #bc-export-media img{
  border-radius:var(--r);aspect-ratio:4/3;object-fit:cover;width:100%;display:block;
  box-shadow:var(--sh-warm)}
body.bc-stone-solution #bc-export-media{position:relative}
body.bc-stone-solution #bc-export-media::after{
  content:"";position:absolute;inset:12px -12px -12px 12px;border:1px solid rgba(209,170,109,.42);
  border-radius:var(--r);pointer-events:none;z-index:-1}

/* --- FAQ + CTA: the FAQ column was bare (transparent, 10px padding) beside a
     solid teal card, and the two columns differed by 62px. Give the FAQ side a
     matching panel and stretch both to equal height. --- */
body.bc-stone-solution #bc-faq-grid{align-items:stretch}
body.bc-stone-solution #bc-faq-left{
  background:rgba(252,250,246,.03);border:1px solid rgba(209,170,109,.20);
  border-radius:var(--r);padding:clamp(26px,3vw,42px)}
body.bc-stone-solution #bc-cta-panel{border-radius:var(--r);box-shadow:var(--sh-2);height:100%}
body.bc-stone-solution #bc-cta-btns .elementor-button{
  transition:transform .28s var(--ease),box-shadow .28s var(--ease),background-color .28s var(--ease)}
body.bc-stone-solution #bc-cta-btns .elementor-button:hover{transform:translateY(-2px);box-shadow:var(--sh-1)}

/* --- FOOTER TRANSITION: close the last section cleanly against the footer. --- */
body.bc-stone-solution #bc-related-solutions{margin-bottom:0}
body.bc-stone-solution #bc-stone-page{margin-bottom:0;padding-bottom:0}