/* The layout comes from the reference's /css/product-page.css. Only foamboard adaptations live here. */
body.foamboard-product { padding-left:0!important; padding-right:0!important; }
body.foamboard-product a,body.foamboard-product a:hover,body.foamboard-product a:focus { text-decoration:none!important; }
.foamboard-product .body_wrapper { max-width:1200px; margin:20px auto; padding:10px; background:#fff; }
.foamboard-page { width:100%; margin:0; color:#444; }
.foamboard-page [hidden],.foamboard-product [hidden] { display:none!important; }
.foamboard-page #productHeading h1 { font:600 30px/1.25 Lato,Arial,sans-serif; letter-spacing:-.01em; color:#3583c1; margin:4px 0 30px; }
.foamboard-page .product-description { font:400 15px/1.65 Lato,Arial,sans-serif; color:#444; }
.foamboard-page .product-description p { margin:0 0 24px; }
.foamboard-page .product-description p:last-child { margin-bottom:14px; }
.foamboard-page .image-overlay-wrapper { width:100%; height:auto!important; aspect-ratio:4/3; }
.foamboard-page .main-image { width:100%; height:100%!important; object-fit:contain; display:block; border-radius:0; }
.foamboard-page .poster-size-image { flex:0 0 40%; width:40%; max-width:120px; }
.foamboard-page .poster-size-image img { display:block; width:100%; height:auto; object-fit:contain; margin:0; }
.foamboard-page .poster-sizes-panel { grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr)); }
.foamboard-page .poster-size-card { min-width:0; height:auto; align-items:center; }
.foamboard-page .poster-size-info { flex:1; min-width:0; width:auto; align-self:stretch; justify-content:center; gap:6px; padding:6px 8px; }
.foamboard-page .poster-size-title { line-height:1.25; }
.foamboard-page .fp-card-pricing { display:flex; flex-direction:column; gap:2px; }
.foamboard-page .poster-size-vat { margin:0; line-height:1.4; }
.foamboard-page .tableheading { color:#30343b; }
.foamboard-page .dropdown_wrapper { margin-bottom:10px; }
.foamboard-page .dropdown_wrapper label { flex:0 0 140px; min-width:0; font-size:14px; font-weight:600; white-space:normal; }
.foamboard-page .dropdown_wrapper label small { display:block; margin-top:2px; font-size:11px; font-weight:400; }
.fp-label-row { display:inline-flex; align-items:center; gap:6px; line-height:20px; white-space:nowrap; }
.foamboard-page .custom-dropdown { min-width:0; height:44px; font:400 15px Lato,Arial,sans-serif; }
.fp-info { display:inline-flex; align-items:center; justify-content:center; flex:0 0 12px; margin:0; width:12px; height:12px; padding:0; border:0; border-radius:50%; color:#fff; background:#2588dd; font:bold 9px/1 Arial,sans-serif; cursor:pointer; }
.fp-versions-control { flex:1; min-width:0; }
.fp-versions-control .custom-dropdown { width:100%; }
#fp-custom-versions { width:100%; padding:10px; margin-top:6px; border:1px solid #ddd; border-radius:4px; }
.foamboard-page .table_scroll_container { max-height:500px; overflow:auto; }
.foamboard-page .fp-price-table { width:100%; text-align:center; }
.foamboard-page .fp-price-table th { background:#3583c1; color:#fff; padding:10px 8px; vertical-align:middle; }
.foamboard-page .fp-price-table th:first-child { background:#fafafa; color:#000; width:16%; }
.foamboard-page .fp-price-table th .heading { font:700 14px/1.5 Lato,Arial,sans-serif; }
.foamboard-page .fp-price-table .turnaround-time { font-size:14px; line-height:1.5; margin:4px 0 0; font-weight:700; }
.foamboard-page .turnaround-time>span { display:block; white-space:nowrap; }
.foamboard-page .fp-price-table td { padding:8px; color:#111; background:#fff; font-size:14px; }
.fp-price { display:block; color:#111!important; text-decoration:none!important; }
.foamboard-page .fp-price-table td:has(.fp-price:hover),.foamboard-page .fp-price-table td:has(.fp-price.is-selected) { background:#3583c1; }
.fp-price:hover,.fp-price.is-selected { color:#fff!important; }
.fp-bespoke-price { display:block; color:#111!important; text-decoration:none!important; }
.fp-bespoke-price[aria-disabled=true] { pointer-events:none; color:#888!important; }
.fp-bespoke-price:hover,.fp-bespoke-price.is-selected { color:#fff!important; }
.foamboard-page .fp-price-table td:has(.fp-bespoke-price:hover),.foamboard-page .fp-price-table td:has(.fp-bespoke-price.is-selected) { background:#3583c1; }
#fp-bespoke-row td { padding:8px; }#fp-bespoke-row label { display:block; margin:0 0 5px; font-weight:600; }
#fp-bespoke-quantity { width:100%; min-width:40px; padding:6px 2px; font-size:13px; border:1px solid #ccc; border-radius:3px; }
#bespokeButtonMount { margin-top:10px; }#fp-bespoke-button { background:#3583c1; color:#fff; padding:4px 8px; font:600 12px Lato,Arial,sans-serif; border:0; border-radius:3px; cursor:pointer; }
#fp-bespoke-status { margin-left:10px; font-size:12px; color:#9f391d; }
.foamboard-page .fp-price-table td:first-child:hover { color:#111!important; }
.fp-price-tools { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:12px; font-size:12px; }
.fp-vat-label { display:flex; align-items:center; gap:10px; margin:0; font-size:14px; font-weight:400; cursor:pointer; }
.fp-vat-switch { position:relative; display:inline-block; width:46px; height:24px; }
.fp-vat-switch input { position:absolute; opacity:0; width:100%; height:100%; margin:0; z-index:1; cursor:pointer; }
.fp-vat-switch>span { position:absolute; inset:0; border-radius:20px; background:#ccc; }
.fp-vat-switch>span::before { content:''; position:absolute; left:3px; top:3px; width:18px; height:18px; border-radius:50%; background:#fff; transition:transform .15s; }
.fp-vat-switch input:checked+span { background:#3583c1; }.fp-vat-switch input:checked+span::before { transform:translateX(22px); }
.fp-vat-switch:has(input:focus-visible) { outline:2px solid #3583c1; outline-offset:3px; }
.fp-vat-note { text-align:right; color:#666; font-size:11px; margin:4px 0 20px; }
.fp-basket-bar { display:flex; width:100%; min-height:68px; margin:20px 0 30px; box-shadow:0 2px 6px #0002; border-radius:5px; overflow:hidden; }
.fp-basket-bar>button { appearance:none; min-width:0; width:auto; margin:0; padding:10px; border:0; box-sizing:border-box; font:400 16px/1.5 Lato,Arial,sans-serif; text-align:center; cursor:pointer; }
.fp-basket-bar .fp-add-basket { flex:2 1 0%; display:flex; align-items:center; justify-content:center; border-radius:5px 0 0 5px; background:#28a745; color:#fff; }
.fp-basket-bar .fp-add-basket:disabled { opacity:1; background:#ccc; color:#fff; cursor:not-allowed; }
.fp-add-basket strong { font-size:24px; line-height:1; margin-right:10px; }.fp-add-basket small { display:block; font-size:10px; }
.fp-basket-bar #fp-save-quote { flex:1 1 0%; border-radius:0 5px 5px 0; color:#fff; background:#3583c1; }
.fp-error { padding:18px; background:#fff7eb; border:1px solid #d8a66a; }
.fp-sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.foamboard-product-tabs { width:100%; padding:0; margin:20px 0 24px; }
.foamboard-product-tabs .full-width-bar { width:100%; left:auto; right:auto; margin:0; }
.foamboard-product-tabs .full-width-bar { background:#3583c1; }
.foamboard-product-tabs .tab-bar { display:flex; max-width:1200px; margin:0 auto; overflow-x:auto; }
.foamboard-product-tabs .tab-bar button { position:relative; flex-shrink:0; color:#fff; background:none; border:0; padding:20px; font:400 16px Lato,Arial,sans-serif; cursor:pointer; box-shadow:none; }
.foamboard-product-tabs .tab-bar button::after { content:''; position:absolute; left:0; right:0; bottom:5px; height:0; background:#fff; }
.foamboard-product-tabs .tab-bar button:hover::after { height:3px; }.foamboard-product-tabs .tab-bar button.active::after { height:3px; background:#1f568b; }
.foamboard-product-tabs .tabbed-info-block { max-width:1200px; padding:0 15px; background:#fff; }
.foamboard-product-tabs .tab-content { display:none; width:100%; padding:20px; box-sizing:border-box; color:#333; }
.foamboard-product-tabs .tab-content.active { display:flex; justify-content:space-between; align-items:stretch; }
.foamboard-product-tabs .custom-text-block { flex:1; padding:20px; box-sizing:border-box; }
.foamboard-product-tabs .custom-image-container { flex:1; padding:20px; display:flex; align-items:center; justify-content:center; }
.foamboard-product-tabs .custom-image-container img { max-width:100%; height:auto; }
.foamboard-product-tabs .tabbed-info-block { margin:24px auto 0; }
.foamboard-product-tabs .faq-answer { display:none; max-height:none!important; }
.foamboard-product-tabs .faq-item.active .faq-answer { display:block; }
.fp-dialog { width:min(520px,calc(100% - 32px)); max-height:85dvh; overflow:auto; border:1px solid #ddd; border-radius:5px; padding:30px; color:#444; }
.fp-dialog::backdrop { background:#0007; }.fp-dialog h2 { font-size:24px; margin:0 28px 20px 0; }.fp-dialog-close { position:absolute; right:12px; top:8px; font-size:27px; border:0; background:none; cursor:pointer; }
.fp-dialog label { display:block; margin:12px 0 5px; }.fp-dialog input,.fp-dialog textarea { display:block; width:100%; max-width:100%; padding:10px; border:1px solid #ddd; }
.fp-dialog button[type=submit] { margin-top:16px; padding:10px 20px; background:#3583c1; border:0; color:#fff; cursor:pointer; }
.foamboard-footer { width:100%; min-width:0; background:#f8f8f8; color:#686867; }
.foamboard-footer .fp-customers { max-width:1200px; margin:auto; padding:40px 20px; text-align:center; }
.foamboard-footer .fp-customers h2 { font:600 21px Lato,Arial,sans-serif; color:#333; margin:0 0 24px; }
.foamboard-footer .fp-customers img { display:block; width:auto; max-width:100%; height:auto; margin:0 auto; padding:0 15px; }
.foamboard-footer #Subscribe { width:100%; min-width:0; }
/* Keep the shared full-width newsletter layout with a compact square button. */
.foamboard-footer .newsletter-form button { margin:0; border-radius:0; font-size:14px; line-height:1.4; }
.foamboard-footer .newsletter-form input[type="email"]::placeholder { color:#777; opacity:1; font-size:14px; }
.foamboard-footer .footer-top { max-width:1200px; margin:auto; padding:40px 20px; }.foamboard-footer .row-custom { display:grid; grid-template-columns:minmax(180px,1.3fr) repeat(4,minmax(0,1fr)); gap:24px; }
.foamboard-footer .row-custom>div { width:auto!important; max-width:none!important; flex:none!important; min-width:0; padding:0 13px; }.foamboard-footer .logo-footer { max-width:100%!important; width:100%; height:auto; margin:24px 0!important; }.foamboard-footer .img-responsive { max-width:25%!important; height:auto; }
.foamboard-footer .widget-body { list-style:none; padding:0; margin:12px 0 0; font-size:16px!important; }.foamboard-footer .widget-body li { margin:7px 0; }.foamboard-footer .widget-body li a { font:400 16px/1.5 'Open Sans',Arial,sans-serif!important; }.foamboard-footer .style5 { color:#333; font:700 16px 'Open Sans',Arial,sans-serif; }
.fp-copyright { text-align:center; border-top:1px solid #ddd; padding:24px 16px; font-size:12px; }
@media(max-width:900px) { .foamboard-footer .row-custom { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:767px) {
 .foamboard-product .body_wrapper { margin:12px; padding:10px; }.foamboard-page .left_column,.foamboard-page .right_column { padding:10px; }
 .foamboard-page #productHeading h1 { font-size:22px; margin-bottom:20px; }.foamboard-page .product-description { font-size:13px; }
 .foamboard-page .dropdown_wrapper label { flex-basis:125px; font-size:12px; }.foamboard-page .custom-dropdown { font-size:14px; }
 .foamboard-page .poster-sizes-wrapper { display:block; }.foamboard-page .poster-size-title { font-size:12px; }.foamboard-page .price-amount { font-size:14px; }
 .foamboard-page .fp-price-table th .heading { font-size:12px; line-height:1.2; }.foamboard-page .fp-price-table .turnaround-time { font-size:11px; line-height:1.3; }.foamboard-page .fp-price-table td { padding:8px 4px; font-size:12px; }
 .fp-price-tools { flex-wrap:wrap; justify-content:flex-end; }.fp-price-tools>span { margin-right:auto; font-size:11px; }.fp-basket-bar { min-height:64px; }.fp-add-basket,#fp-save-quote { font-size:14px; }
 .foamboard-product-tabs #tab1>div,.foamboard-product-tabs #tab2>div { flex-direction:column; width:100%; min-width:0; }.foamboard-product-tabs #tab5>div { grid-template-columns:minmax(0,1fr)!important; }
 .foamboard-product-tabs .custom-text-block,.foamboard-product-tabs .custom-image-container { min-width:0; flex:none!important; width:100%; }.foamboard-product-tabs .custom-image-container img { height:auto!important; }
 .foamboard-footer .row-custom>div:first-child { grid-column:1/-1; }
}
@media(max-width:380px) { .foamboard-page .dropdown_wrapper { align-items:flex-start; gap:8px; }.foamboard-page .dropdown_wrapper label { flex-basis:110px; } }
