Invite team members

Pasted text.txt
Document
goldi please <p>Heavy-gauge thermoforming tooling typically costs $10,000 to $50,000, roughly 10 to 15% of a comparable sized injection mold, which often exceeds $150,000. Per-part price depends on material, sheet gauge, part size, cycle time, and trim complexity. For annual volumes below about 3,000 to 5,000 parts, thermoforming usually delivers the lower total cost per part once tooling amortization is included.</p>
<!--more-->
<p>Those are the numbers most engineers and buyers want when they start pricing a project. The detail behind them matters just as much, because two parts of identical size can quote very differently. This post walks through where the money goes.</p>
<h2>How Much Does Thermoforming Tooling Cost?</h2>
<p>Most heavy-gauge thermoforming tools cost between $10,000 and $50,000, depending on part size, complexity, and whether the process is vacuum forming or pressure forming. That is about 10 to 15% of the cost of an equivalent injection mold, based on tooling comparisons across PCI production programs.</p>
<p>The gap comes down to forming pressure. Vacuum forming shapes the sheet with atmospheric pressure, about 14.7 psi. Pressure forming adds compressed air and reaches roughly 60 psi. Injection molding forces molten resin into a closed steel mold at 10,000 to 20,000 psi. A tool built to survive that kind of clamping force has to be hardened steel, machined in matched halves, with cooling channels and ejection systems. A thermoform tool only has to hold its shape against air pressure, so machined or cast aluminum does the job at a fraction of the machining time and material cost.</p>
<p>Prototype tooling costs even less. Wood, epoxy board, or soft aluminum patterns support short runs and design validation before you commit to production aluminum. PCI builds tooling in-house, which keeps tool cost and tool schedule inside one roof instead of adding a second vendor's margin and lead time.</p>
<h2>What Determines the Per-Part Price of a Thermoformed Component?</h2>
<p>Five inputs set the per-part price of a thermoformed component: raw material, sheet thickness, part size, forming cycle time, and trimming. Material is usually the largest single line item on heavy-gauge parts.</p>
<p>Sheet is priced by the pound, so a thicker gauge or a physically larger blank raises cost directly. Material choice compounds that. Commodity ABS or HDPE sits at the low end of the price range, while polycarbonate, PETG, and fire-rated grades such as KYDEX carry a premium tied to their performance. Specifying the material the application needs, rather than the highest-performing sheet available, is the fastest way to control unit price.</p>
<p>Trim scrap does come back. The offcut from a formed sheet can be reground and blended into new extruded sheet, which is standard practice in heavy-gauge work and softens the effective material cost. Cycle time then depends on sheet gauge, since thicker material takes longer to heat and longer to cool. Trimming rounds out the price: a part with a simple perimeter cut trims quickly on a 5-axis CNC router, while one with dozens of holes, slots, and mounting features occupies the router longer and costs more per piece.</p>
<h2>Is Thermoforming Cheaper Than Injection Molding?</h2>
<p>Below roughly 3,000 to 5,000 parts per year, thermoforming is usually the cheaper process once tooling amortization is included. Above that range, injection molding's lower per-part price starts to repay its higher tooling investment.</p>
<p>The math is simple. Spread a $30,000 thermoform tool across 2,000 parts per year and the tooling burden is $15 per part in year one. Spread a $150,000 injection mold across the same 2,000 parts and the burden is $75 per part. Injection molding's faster cycles cannot close a gap that wide at low volume. Run 50,000 parts a year and the picture reverses.</p>
<p>Part size shifts the crossover too. Injection molds for large parts get disproportionately expensive because press tonnage and mold steel scale with the part's projected area, so a 4-foot equipment panel may favor thermoforming even at volumes above the usual threshold. PCI runs this comparison during quoting so the process recommendation follows the production plan, not the other way around.</p>
<h2>How Much Does a Thermoformed Prototype Cost, and How Long Does It Take?</h2>
<p>Thermoformed prototypes at PCI ship in 15 to 20 working days, formed in the production material on low-cost prototype tooling. Injection-molded prototypes typically wait on mold fabrication measured in months.</p>
<p>That schedule difference has a cost attached to it. A program that validates fit and function in three weeks instead of a quarter reaches production revenue sooner and burns fewer engineering hours on the wait. Prototype tooling spend is usually a small fraction of the production tool, and because thermoform prototypes come off real tooling in real sheet, the test articles behave like production parts under impact, load, and temperature.</p>
<h2>How Can Engineers Reduce the Cost of a Thermoformed Part?</h2>
<p>The largest savings come from design decisions made before tooling is cut: consolidating assemblies into one formed part, choosing a standard sheet gauge, relaxing tolerances on non-critical features, and using molded-in color or texture instead of paint.</p>
<p>Part consolidation deserves the first look. A formed component can replace a welded or fastened metal assembly outright, which removes fabrication labor along with weight. In one PCI case study, a 718-pound welded steel belt guard became a 38-pound thermoformed ABS part, a 95% weight reduction that also eliminated the welding, grinding, and painting the steel version required.</p>
<p>Finish decisions follow the same logic. Textured sheet and molded-in color arrive at trim already finished, so every painted surface you remove from the drawing removes a secondary operation from the quote. Tolerances matter for the same reason. Features that must be held tightly get CNC-trimmed, and every tightly toleranced feature adds inspection and machine time. Flag the dimensions that genuinely control fit and let the rest carry standard tolerances.</p>
<p>An early design review with your thermoformer surfaces these opportunities while they still cost nothing to act on. PCI's engineering team runs that review as part of quoting.</p>
<h2>Frequently Asked Questions</h2>
<h3>Does thermoforming have minimum order quantities?</h3>
<p>Most heavy-gauge programs run economically from the tens of parts into the low thousands per year. Because tooling is inexpensive relative to injection molding, small annual quantities do not have to carry a crushing amortization burden.</p>
<h3>Why do thermoforming quotes vary so much between suppliers?</h3>
<p>Tooling approach is the usual reason. Suppliers who outsource tooling pass through a second margin, and quotes differ on tool material, trim fixturing, and how much finishing is included. Compare quotes line by line rather than by the bottom number.</p>
<h3>Does material choice change tooling cost?</h3>
<p>Yes, in some cases. Some materials can be molded on 3d printed or composite tooling while other materials must almost exclusively be molded on temperature controlled aluminum tools. The tool is sized to the part, not the resin, and high-shrink materials such as HDPE may require different shrink compensation in the tool design than low shrink materials. All pressure forming calls for a temperature-controlled tool that costs more than a basic vacuum-form tool to handle the higher pressures of the molding process.</p>
<p>If you have a part drawing and a target annual volume, PCI can return a tooling and per-part estimate along with a process recommendation. Request a quote or send the model for a design review.&nbsp;</p>
<p><!--HubSpot Call-to-Action Code --><span class="hs-cta-wrapper" id="hs-cta-wrapper-411d94a0-aa71-46a6-b68c-8a4f932f3eb6"><span class="hs-cta-node hs-cta-411d94a0-aa71-46a6-b68c-8a4f932f3eb6" id="hs-cta-411d94a0-aa71-46a6-b68c-8a4f932f3eb6"><!--[if lte IE 8]><div id="hs-cta-ie-element"></div><![endif]--><a href="https://cta-redirect.hubspot.com/cta/redirect/9458122/411d94a0-aa71-46a6-b68c-8a4f932f3eb6"><img class="hs-cta-img" id="hs-cta-img-411d94a0-aa71-46a6-b68c-8a4f932f3eb6" style="border-width:0px;" height="200" width="600" src="https://no-cache.hubspot.com/cta/default/9458122/411d94a0-aa71-46a6-b68c-8a4f932f3eb6.png" alt="New call-to-action"></a></span><script charset="utf-8" src="/hs/cta/cta/current.js"></script><script type="text/javascript"> hbspt.cta._relativeUrls=true;hbspt.cta.load(9458122, '411d94a0-aa71-46a6-b68c-8a4f932f3eb6', {"useNewLoader":"true","region":"na1"}); </script></span><!-- end HubSpot Call-to-Action Code --></p> css attached 

Yes. Your CSS already includes the full .pci-quick-answer styling, paired with the .pci-toc card system. No CSS changes needed. 


Place it immediately after <!--more--> and before the Table of Contents:

<!--more-->

<div class="pci-quick-answer">
<p class="pci-quick-answer__title"><span>Quick Answer</span></p>
<p>Heavy-gauge thermoforming tooling typically costs $10,000 to $50,000, or about 10 to 15% of the cost of a comparable injection mold. Thermoforming usually delivers the lower total cost for annual volumes below approximately 3,000 to 5,000 parts, although material, sheet thickness, part size, cycle time, and trimming requirements all affect the final per-part price.</p>
</div>

<nav class="pci-toc" aria-labelledby="pci-toc-title">
That gives the post a useful answer-card without simply cloning the opening paragraph word for word.


can we update the css to add a little space below quick answer? Alsoplease make sure Quick Answer and Table of Contents are the same typography size, weight, etc.

Yep, I misunderstood. You mean more breathing room between the “Quick Answer” label and its answer text, not between the two cards.

Replace the existing shared title rule with this: 


.pci-quick-answer__title,
.pci-toc__title {
  margin: 0 0 1rem;
  font-family: inherit;
  font-size: 0.85em;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
The change is:

margin: 0 0 1rem;
That adds a little more space below both Quick Answer and Table of Contents titles while keeping their typography perfectly matched. No other CSS changes are needed.


866e52e7-a59c-471e-8389-e2695dc00efc.png
I would like the spacing to the same. I prefer the Table of Contents spacing between the title and the content.

Yep, the screenshot reveals the culprit. This rule is wiping out the Quick Answer title margin because the title itself is a <p>:

.pci-quick-answer p {
  margin: 0;
}
Replace it with this:

.pci-quick-answer p:not(.pci-quick-answer__title) {
  margin: 0;
}
Keep the shared title rule at the original Table of Contents spacing:

.pci-quick-answer__title,
.pci-toc__title {
  margin: 0 0 0.75rem;
  font-weight: 600;
  font-size: 0.85em;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}
That will make the space below Quick Answer match the space below Table of Contents exactly. The title typography is already shared by both selectors. 



full copy and replace please for the css?

Replace the entire existing Plastic Components blog - Content Utility Cards section with this block. It fixes the Quick Answer spacing while keeping both card titles identical. 


/* Plastic Components blog - Content Utility Cards
   Used for:
   .pci-quick-answer
   .pci-toc
*/

.pci-quick-answer,
.pci-toc {
  margin: 2rem 0;
  padding: 1rem 1.25rem;
  border: 1px solid #d9dde3;
  border-radius: 4px;
  background: #f7f8fa;
  font-size: 0.95em;
  line-height: 1.5;
}

/* Keep Quick Answer and Table of Contents titles identical */
.pci-quick-answer__title,
.pci-toc__title {
  margin: 0 0 0.75rem;
  font-family: inherit;
  font-size: 0.85em;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.pci-quick-answer__title span,
.pci-toc__title span {
  opacity: 0.85;
}

/* Remove default paragraph margins without affecting the title */
.pci-quick-answer p:not(.pci-quick-answer__title) {
  margin: 0;
}

.pci-toc__list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.pci-toc__item {
  margin: 0.25rem 0;
  padding-left: 0.25rem;
  text-indent: -0.25rem;
}

.pci-toc__link {
  color: inherit;
  text-decoration: none;
  border-bottom: 1px dashed transparent;
  transition: border-color 0.15s ease, color 0.15s ease;
}

.pci-toc__link:hover,
.pci-toc__link:focus {
  border-bottom-color: currentColor;
  outline: none;
}

@media (max-width: 767px) {
  .pci-quick-answer,
  .pci-toc {
    padding: 1rem 1.25rem;
    font-size: 0.9em;
  }
}

can you give me the full copy and replace for the entire css file please

Here is the full copy-and-replace CSS file, with the Quick Answer title spacing corrected to match the Table of Contents and no other styling sections removed. 




Library
/
Plastic Components, Inc.
/
pci-child-full-copy-replace.css






/* 1. Variables */

/* 1a. Layouts */




/* 1b. Global colors */








/* 1c. Global fonts */




/* 1d. Typography */











/* 1e. Buttons */










/* 1e. Forms */







/* 1f. Tables */








/* Blog */














/* Scroll to top */





/* 2. Containers / Grid / DnD Areas */

body {
  background-color: #ffffff;
}

.growfast-content-wrapper {
  max-width: 1240px;
}

.dnd-section,
.content-wrapper--vertical-spacing {
  padding: 64px 0;
}

.dnd-section > .row-fluid {
  max-width: 1240px;
}

/* 3. Typography  */

html {
  font-size: 17px;
}

body {
  font-family: 'Open Sans', sans-serif; font-style: normal; font-weight: normal; text-decoration: none;
  color: #363636;
}

/* Paragraphs */

p {
  font-family: 'Open Sans', sans-serif; font-style: normal; font-weight: normal; text-decoration: none;
}

hr{
  background-color: #363636;
}

/* Anchors */

a {
  color: #3574E3;
}

a:hover{
  color: #102d7b;
}

/* Headings */

h1 {
  font-family: 'Open Sans', sans-serif; font-style: normal; font-weight: normal; text-decoration: none;
  color: #111111;
  font-size: 36px;
}

h2 {
  font-family: 'Open Sans', sans-serif; font-style: normal; font-weight: normal; text-decoration: none;
  color: #111111;
  font-size: 30px;
}

h3 {
  font-family: 'Open Sans', sans-serif; font-style: normal; font-weight: normal; text-decoration: none;
  color: #111111;
  font-size: 24px;
}

h4 {
  font-family: 'Open Sans', sans-serif; font-style: normal; font-weight: normal; text-decoration: none;
  color: #111111;
  font-size: 18px;
}

h5 {
  font-family: 'Open Sans', sans-serif; font-style: normal; font-weight: normal; text-decoration: none;
  color: #111111;
  font-size: 16px;
}

h6 {
  font-family: 'Open Sans', sans-serif; font-style: normal; font-weight: normal; text-decoration: none;
  color: #111111;
  font-size: 14px;
}

/* Blockquote */

blockquote {
  border-left-color: #102d7b;
}

/* 4. Buttons  */

button,
.button {
  background-color: #fff;
  border: 2px solid #0b429b;
  border-radius: 17px;
  padding: 6px 20px;
  font-family: 'Open Sans', sans-serif; font-style: normal; font-weight: normal; text-decoration: none;
  color: #ffffff;
  font-size: 17px;
}

button svg path,
.button svg path {
  fill: #ffffff;
}

button:hover,
button:focus,
.button:hover,
.button:focus {
  background-color: rgba(0, 0, 0, 0.05);
  border-color: #6977cf;
  color: #0b429b;
}

button:active,
.button:active {
  background-color: rgba(0, 0, 0, 0.05);
  border-color: #6977cf;
  color: #0b429b;
}

/* 5. Forms  */

form,
.submitted-message {
  font-family: 'Open Sans', sans-serif; font-style: normal; font-weight: normal; text-decoration: none;
}

/* Form title */

.form-title {
  color: #333;
}

/* Form label */

form label {
  color: #333;
}

/* Form help text */

form legend {
  color: #333;
}

/* Form inputs */

form input[type=text],
form input[type=email],
form input[type=password],
form input[type=tel],
form input[type=number],
form input[type=file],
form select,
form textarea {
  border-color: #bbb;
  color: #363636;
}

form input[type=text]:focus,
form input[type=email]:focus,
form input[type=password]:focus,
form input[type=tel]:focus,
form input[type=number]:focus,
form input[type=file]:focus,
form select:focus,
form textarea:focus,
form input[type=text]:focus,
form input[type=email]:focus,
form input[type=password]:focus,
form input[type=tel]:focus,
form input[type=number]:focus,
form input[type=file]:focus,
form select:focus,
form textarea:focus {
  border-color: #bbb;
}

/* Form placeholder text */

::-webkit-input-placeholder {
  color: #363636;
}

::-webkit-input-placeholder,
::-moz-placeholder,
:-ms-input-placeholder,
:-moz-placeholder,
::placeholder,
.hs-fieldtype-date .input .hs-dateinput:before {
  color: #363636;
}

/* Date picker */

.fn-date-picker td.is-selected .pika-button {
  background: #494A52;
}

.fn-date-picker td .pika-button:hover {
  background-color: #494A52 !important;
}

.fn-date-picker td.is-today .pika-button {
  color: #494A52;
}

/* Submit button */

form input[type=submit],
form .hs-button {
  background-color: #fff;
  border: 2px solid #0b429b;
  border-radius: 17px;
  padding: 6px 20px;
  font-family: 'Open Sans', sans-serif; font-style: normal; font-weight: normal; text-decoration: none;
  color: #ffffff;
  font-size: 17px;
}

form input[type=submit]:hover,
form .hs-button:hover {
  background-color: rgba(0, 0, 0, 0.05);
  border-color: #6977cf;
  color: #0b429b;
}

/* Validation */

.hs-form-required {
  color: #FF0201;
}

.hs-input.invalid.error {
  border-color: #FF0201;
}

.hs-error-msg {
  color: #FF0201;
}

/* 6. Tables */

table {
  background-color: #fff;
  border-color: #333;
}

th,
td {
  border-color: #333;
  color: #333;
}

thead th,
thead td {
  background-color: ;
  border-bottom-color: #333;
  color: #FFFFFF;
}

tfoot td {
  background-color: #FFFFFF;
  color: #333;
}

/* 9. Scroll to top  */

.growfast-scrolltop {
  background-color: rgba(51, 51, 51, 1.0);
}
.growfast-scrolltop-svg-wrap svg path{
  fill: rgba(255, 255, 255, 1.0);
}

/* 10. Blog */

.growfast-blog-post__header__content-inner--tag-link:hover{
  color: #ffffff;
  background-color: #fff;
  border-color: #fff;
}

.growfast-blog__header__content-inner--tag-link:hover{
  color: #ffffff;
  background-color: #fff;
  border-color: #fff;
}

.growfast-blog__header__bg{
  background-color: #172029;
}

.growfast-blog-pagination__link {
  color: #494A52;
}

.growfast-blog-pagination__link--active {
  color: #3574E3;
}

.growfast-blog-pagination__link:hover {
  color: #3574E3;
}

.growfast-blog-pagination__prev-link svg,
.growfast-blog-pagination__next-link svg {
  fill: #363636;
}

.growfast-blog-pagination__prev-link:hover svg,
.growfast-blog-pagination__next-link:hover svg {
  fill: #3574E3;
}

.growfast-blog-related-posts__title a:hover,
.growfast-blog-related-posts__title a {
  color: #102d7b;
}

.growfast-blog-related-posts__author {
  color: #363636;
}

.growfast-blog-related-posts__author:hover {
  color: #363636;
}

.growfast-blog-related-posts__author-info--name {
  color: #102d7b;
}

.growfast-blog-related-posts__content--tag-link>span:after {
  background-color: #102d7b;
}

.growfast-blog-auhtor__inner__label {
  background-color: rgba(240, 84, 125, 1.0);
}

.growfast-blog-auhtor__inner__details__social-links svg path {
  fill: rgba(149, 149, 149, 1.0);
}

.growfast-blog-auhtor__inner__details__social-links a:hover svg path {
  fill: rgba(240, 84, 125, 1.0);
}

.growfast-blog-prev-next-posts__content--label{
  font-family: Jost;
  font-family: Jost, sans-serif; font-style: normal; font-weight: 500; text-decoration: none;
  color: #FFFFFF;
  font-size: 18px;
}

.growfast-blog-prev-next-posts__content--title{
  font-family: Jost;
  font-family: Jost, sans-serif; font-style: normal; font-weight: 600; text-decoration: none;
  color: #FFFFFF;
  font-size: 24px;
}

.growfast-blog-prev-next-posts__bg--image:after {
  background-color: rgba(17, 17, 17, 1.0); 
}

.growfast-blog-prev-next-posts__prev__content{
  height: 300px;
}

.growfast-blog-prev-next-posts__content--title svg {
  fill: rgba(255, 255, 255, 1.0); 
}

.growfast-blog-prev-next-posts__next__content,
.growfast-blog-prev-next-posts__prev__content {
  min-height: 300px;
}

.growfast-blog__header__bg {
    /*height: 300px; */
}
/* 11. System pages */

/* 12. Modules */

.growfast-theme .lang_list_class li a {
  color: #102d7b;
}

.growfast-theme .lang_list_class li a:hover{
  color: #3574E3;
}

.growfast-theme .hs-common-confirm-message{
  font-size: 17px !important;
}

.growfast-theme .comment-reply-to{
  background: #fff;
  font-family: 'Open Sans', sans-serif; font-style: normal; font-weight: normal; text-decoration: none;
  color: #ffffff;
}

.growfast-theme .comment-reply-to:hover {
  background-color: rgba(0, 0, 0, 0.05);
  color: #0b429b;
}

.growfast-theme .comment-from h4 a,
.growfast-theme .comment-from h4 {
  color: #102d7b;
}

.growfast-theme .hs-search-field__suggestions #results-for {
  font-weight: regular;
}

.growfast-blog-listing1__title a:hover,
.growfast-blog-listing1__title a {
  color: #102d7b;
}

.growfast-blog-listing1__author {
  color: #494A52;
}

.growfast-blog-listing1__author:hover {
  color: #494A52;
}

.growfast-blog-listing1__author-info--name {
  font-family: 'Open Sans', sans-serif; font-style: normal; font-weight: normal; text-decoration: none;
  color: #102d7b;
}

.growfast-blog-listing1__content--tag-link>span:after {
  background-color: #102d7b;
}

.growfast-blog2__title a:hover,
.growfast-blog2__title a {
  color: #102d7b;
}

.growfast-blog2__content--tag-link>span:after {
  background-color: #102d7b;
}

.growfast-footer-module__navigation .hs-menu-depth-1 > a{
  font-weight: regular;
}

.growfast-testimonial2__inner
.growfast-slider__slide__content-wrapper__content,
.growfast-cta1__content-wrapper__content,
.growfast-page-header__content-wrapper__content {
  width: 1240px !important;
}

.hs-footer-company-copyright {
  color:#FFF!important;
}

.growfast-header--header .growfast-submenu.level-1 > li > span a {
  font-size:17px;
}

.growfast-header--header .growfast-submenu.level-2 > li > span a {
  font-size:17px;
}

.growfast-blog__header__content{
  background-color:#102d7b;
}

.growfast-footer a:hover {
  color: #102d7b;
}

/* Plastic Components blog – Content Utility Cards
   Used for:
   .pci-quick-answer
   .pci-toc
*/

.pci-quick-answer,
.pci-toc {
  margin: 2rem 0;
  padding: 1rem 1.25rem;
  border: 1px solid #d9dde3;
  border-radius: 4px;
  background: #f7f8fa;
  font-size: 0.95em;
  line-height: 1.5;
}

/* Keep Quick Answer and Table of Contents titles identical */
.pci-quick-answer__title,
.pci-toc__title {
  margin: 0 0 0.75rem;
  font-family: inherit;
  font-size: 0.85em;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.pci-quick-answer__title span,
.pci-toc__title span {
  opacity: 0.85;
}

/* Remove paragraph margins without removing the title spacing */
.pci-quick-answer p:not(.pci-quick-answer__title) {
  margin: 0;
}

.pci-toc__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.pci-toc__item {
  margin: 0.25rem 0;
  padding-left: 0.25rem;
  text-indent: -0.25rem;
}

.pci-toc__link {
  color: inherit;
  text-decoration: none;
  border-bottom: 1px dashed transparent;
  transition: border-color 0.15s ease, color 0.15s ease;
}

.pci-toc__link:hover,
.pci-toc__link:focus {
  border-bottom-color: currentColor;
  outline: none;
}

/* PCI Blog Subscribe */

/* Keep checkbox + label together and left-aligned */
.hs-form .hs-form-booleancheckbox label {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
}

/* Keep "Subscribe to our Blog" on one line */
.hs-form .hs-form-booleancheckbox label,
.hs-form .hs-form-booleancheckbox label span {
  white-space: nowrap;
}

/* Wrap + center the whole subscribe area */
.growfast-blog__header__subscribe {
  margin-top: 2rem;
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

/* Heading + intro text */
.growfast-blog__header__subscribe-title {
  margin-bottom: 0.5rem;
  color: #ffffff;
  font-size: 1.5rem;
}

.growfast-blog__header__subscribe-text {
  margin-bottom: 1rem;
  color: #ffffff;
}

/* Center the form container */
.growfast-blog__header__subscribe-form {
  text-align: center;
}

/* Shared height for both controls */
:root {
  --pci-subscribe-height: 48px;
}

/* Make the HubSpot form itself an inline-block so it can be centered */
.growfast-blog__header__subscribe-form .hs-form {
  display: inline-block;
  margin: 0 auto;
  font-size: 0;
}

/* Remove default bottom margins */
.growfast-blog__header__subscribe-form .hs-form .hs-form-field {
  margin: 0 !important;
}

/* Put the two main fields on one line */
.growfast-blog__header__subscribe-form .hs-form .hs_email,
.growfast-blog__header__subscribe-form .hs-form .hs-email,
.growfast-blog__header__subscribe-form .hs-form .hs_submit,
.growfast-blog__header__subscribe-form .hs-form .hs-submit {
  display: inline-block;
  vertical-align: top;
}

/* Give the email wrapper most of the width, let GO hug the right */
.growfast-blog__header__subscribe-form .hs-form .hs_email,
.growfast-blog__header__subscribe-form .hs-form .hs-email {
  max-width: 360px;
}

/* Hide the email label */
.growfast-blog__header__subscribe-form .hs-form .hs_email label,
.growfast-blog__header__subscribe-form .hs-form .hs-email label {
  display: none !important;
}

/* Email input */
.growfast-blog__header__subscribe-form .hs-form .hs_email .input input,
.growfast-blog__header__subscribe-form .hs-form .hs-email .input input {
  display: inline-block;
  box-sizing: border-box;
  width: 100%;
  height: var(--pci-subscribe-height) !important;
  padding: 0 1rem !important;
  border: 1px solid #ccc;
  border-right: none;
  border-radius: 4px 0 0 4px;
  font-size: 16px;
  line-height: var(--pci-subscribe-height) !important;
}

/* Kill margin on the actions wrapper around GO */
.growfast-blog__header__subscribe-form .hs-form .hs_submit .actions,
.growfast-blog__header__subscribe-form .hs-form .hs-submit .actions {
  display: inline-block;
  margin: 0 !important;
  margin-top: 0 !important;
  vertical-align: top;
}

/* GO button */
.growfast-blog__header__subscribe-form .hs-form .hs_submit .actions input[type="submit"],
.growfast-blog__header__subscribe-form .hs-form .hs-submit .actions input[type="submit"] {
  display: inline-block;
  height: var(--pci-subscribe-height) !important;
  margin-top: 0 !important;
  padding: 0 1.75rem !important;
  border: 1px solid #c8102e !important;
  border-radius: 0 4px 4px 0 !important;
  background-color: #c8102e !important;
  color: #ffffff !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: var(--pci-subscribe-height) !important;
  text-align: center;
  cursor: pointer;
  transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out;
}

.growfast-blog__header__subscribe-form .hs-form .hs_submit .actions input[type="submit"]:hover,
.growfast-blog__header__subscribe-form .hs-form .hs-submit .actions input[type="submit"]:hover {
  margin-top: 0 !important;
  border-color: #a10d23 !important;
  background-color: #a10d23 !important;
}

.hs-submit {
  margin-top: 0 !important;
}

/* PCI Table System
   Global styles for blog and site table markup:
   .pci-table-responsive
   .pci-table
   .pci-table--comparison
   .rowhead, .win, .loss, .neutral
*/

:root {
  --pci-table-border: #d9dee7;
  --pci-table-header-bg: var(--pci-blue, #0057b8);
  --pci-table-header-text: #ffffff;
  --pci-table-row-alt: #f7f9fc;
  --pci-table-text: #1f2937;
  --pci-table-shadow: 0 8px 24px rgba(31, 41, 55, 0.08);
  --pci-table-radius: 12px;
}

.pci-table-responsive {
  width: 100%;
  overflow-x: auto;
  margin: 1.5rem 0;
  -webkit-overflow-scrolling: touch;
}

.pci-table {
  width: 100%;
  min-width: 720px;
  border: 1px solid var(--pci-table-border);
  border-radius: var(--pci-table-radius);
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  background: #ffffff;
  color: var(--pci-table-text);
  box-shadow: var(--pci-table-shadow);
  font-size: inherit;
  line-height: 1.5;
}

.pci-table caption {
  caption-side: top;
  margin-bottom: 0.75rem;
  color: var(--pci-table-text);
  font-weight: 700;
  text-align: left;
}

.pci-table thead th {
  padding: 0.9rem 1rem;
  border-right: 1px solid rgba(255, 255, 255, 0.15);
  background: var(--pci-table-header-bg);
  color: var(--pci-table-header-text);
  font-weight: 700;
  text-align: left;
  vertical-align: top;
}

.pci-table thead th:last-child {
  border-right: 0;
}

.pci-table tbody th,
.pci-table tbody td {
  padding: 0.9rem 1rem;
  border-top: 1px solid var(--pci-table-border);
  border-right: 1px solid var(--pci-table-border);
  background: #ffffff;
  vertical-align: top;
}

.pci-table tbody tr:nth-child(even) th,
.pci-table tbody tr:nth-child(even) td {
  background: var(--pci-table-row-alt);
}

.pci-table tbody th:last-child,
.pci-table tbody td:last-child {
  border-right: 0;
}

.pci-table .rowhead {
  font-weight: 700;
  white-space: nowrap;
}

.pci-table .win,
.pci-table .loss,
.pci-table .neutral {
  background: inherit !important;
  color: inherit;
  font-weight: 600;
}

.pci-table--comparison tbody th {
  width: 24%;
}

.pci-table--comparison tbody td {
  width: 38%;
}

.pci-table a {
  text-decoration: underline;
}

.pci-table a:hover,
.pci-table a:focus {
  text-decoration-thickness: 2px;
}

/* Mobile tweaks */
@media (max-width: 767px) {
  .pci-quick-answer,
  .pci-toc {
    padding: 1rem 1.25rem;
    font-size: 0.9em;
  }

  .pci-table-responsive {
    margin: 1.25rem 0;
  }

  .pci-table {
    min-width: 640px;
    font-size: 0.95em;
  }

  .pci-table thead th,
  .pci-table tbody th,
  .pci-table tbody td {
    padding: 0.8rem 0.85rem;
  }
}

@media (max-width: 600px) {
  .growfast-blog__header__subscribe-form .hs-form {
    display: block;
    font-size: 16px;
  }

  .growfast-blog__header__subscribe-form .hs-form .hs_email,
  .growfast-blog__header__subscribe-form .hs-form .hs-email,
  .growfast-blog__header__subscribe-form .hs-form .hs_submit,
  .growfast-blog__header__subscribe-form .hs-form .hs-submit {
    display: block;
    max-width: none;
  }

  .growfast-blog__header__subscribe-form .hs-form .hs_email .input input,
  .growfast-blog__header__subscribe-form .hs-form .hs-email .input input {
    margin-bottom: 0.5rem;
    border-right: 1px solid #ccc;
    border-radius: 4px;
  }

  .growfast-blog__header__subscribe-form .hs-form .hs_submit .actions input[type="submit"],
  .growfast-blog__header__subscribe-form .hs-form .hs-submit .actions input[type="submit"] {
    width: 100%;
    border-radius: 4px !important;
  }
}

/* PCI mobile stacked comparison tables */
@media (max-width: 767px) {
.pci-table--comparison {
min-width: 0;
border: 0;
box-shadow: none;
background: transparent;
}

.pci-table--comparison thead {
display: none;
}

.pci-table--comparison,
.pci-table--comparison tbody,
.pci-table--comparison tr,
.pci-table--comparison th,
.pci-table--comparison td {
display: block;
width: 100%;
}

.pci-table--comparison tr {
margin: 0 0 1rem;
border: 1px solid var(--pci-table-border, #d9dee7);
border-radius: var(--pci-table-radius, 12px);
overflow: hidden;
background: #ffffff;
box-shadow: var(--pci-table-shadow, 0 8px 24px rgba(31, 41, 55, 0.08));
}

.pci-table--comparison tbody th.rowhead {
padding: 0.85rem 1rem;
border: 0;
background: var(--pci-table-header-bg, #0057b8);
color: var(--pci-table-header-text, #ffffff);
font-weight: 700;
white-space: normal;
}

.pci-table--comparison tbody td {
position: relative;
padding: 0.85rem 1rem;
border: 0;
border-top: 1px solid var(--pci-table-border, #d9dee7);
background: #ffffff;
}

.pci-table--comparison tbody tr:nth-child(even) td {
background: #ffffff;
}

.pci-table--comparison tbody td::before {
display: block;
margin-bottom: 0.35rem;
color: var(--pci-table-header-bg, #0057b8);
font-weight: 700;
content: attr(data-label);
}
}

/* Plastic Components blog - FAQ Accordion
   Used for:
   .pci-faq
   Native <details>/<summary> accordion, no JavaScript required.
*/

.pci-faq {
  margin: 2rem 0;
  padding: 1rem 1.25rem;
  border: 1px solid #d9dde3;
  border-radius: 4px;
  background: #f7f8fa;
  font-size: 0.95em;
  line-height: 1.5;
}

.pci-faq__title {
  margin: 0 0 0.75rem;
  font-weight: 600;
  font-size: 0.85em;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.pci-faq__title span {
  opacity: 0.85;
}

.pci-faq__item {
  margin: 0;
  border-top: 1px solid #d9dde3;
}

.pci-faq__item:first-of-type {
  border-top: 0;
}

.pci-faq__question {
  position: relative;
  display: block;
  margin: 0;
  padding: 1rem 2.25rem 1rem 0;
  color: inherit;
  font-weight: 700;
  line-height: 1.35;
  cursor: pointer;
  list-style: none;
}

.pci-faq__question::-webkit-details-marker {
  display: none;
}

.pci-faq__question::after {
  position: absolute;
  top: 50%;
  right: 0;
  width: 1.4rem;
  height: 1.4rem;
  border: 1px solid #d9dde3;
  border-radius: 50%;
  background: #ffffff;
  color: inherit;
  content: "+";
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.25rem;
  text-align: center;
  transform: translateY(-50%);
}

.pci-faq__item[open] .pci-faq__question::after {
  content: "-";
}

.pci-faq__question:hover,
.pci-faq__question:focus {
  color: inherit;
}

.pci-faq__question:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
}

.pci-faq__answer {
  padding: 0 0 1rem;
}

.pci-faq__answer p {
  margin-top: 0;
}

.pci-faq__answer p:last-child {
  margin-bottom: 0;
}

@media (max-width: 767px) {
  .pci-faq {
    padding: 1rem 1.25rem;
    font-size: 0.9em;
  }

  .pci-faq__question {
    padding: 0.85rem 2rem 0.85rem 0;
  }

  .pci-faq__answer {
    padding-bottom: 0.85rem;
  }
}