* {
  box-sizing:border-box;
  margin:0;
  padding:0;  
  -webkit-appearance:none;
  -moz-appearance:none;
  -ms-appearance:none;
  -o-appearance:none;
  appearance:none;
  outline:none;
  border:none;
  background:transparent;
  text-decoration:none;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
html {
  font-size:18px;
  font-family: -apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}
:root {
  --primary:2.4em;
  --secondary:2em;
  --tertiary:.8em;
  --body:1em;
  --small:.8em;
  --xsmall:.6em;

  --dark:#2F4979;
  --mid:#5672A8;
  --light:#ACBBD8;
  --xlight:#F5F9FF;
  --accent:#9CE2CA;

  --fast:.3s ease-in;
  --slow:.5s ease-in;

  --font-family:-apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}

::-webkit-scrollbar {
  width:12px;
}
::-webkit-scrollbar-track {
  background:#FFF;
}
::-webkit-scrollbar-thumb {
  background:var(--mid);
}
::-webkit-scrollbar-thumb:hover {
  background:var(--dark);
}
body {
  color:var(--mid);
  cursor:default;
}

h1,
h2,
h3 {
  text-transform:uppercase;
  font-weight:700;
  margin:.4em 0;
}
h1 {
  font-size:var(--primary);
}
h2 {
  font-size:var(--secondary);
}
h3 {
  font-size:var(--small);
  margin:.5em 0 0 0;
}
p {
  line-height:1.6em;
  margin:.4em 0;
}
a {
  color:var(--light);
  cursor:pointer;
  transition:var(--slow);
}
a:hover {
  color:var(--dark);
  transition:var(--fast);
}
button {
  font-family:var(--font-family);
  text-transform:uppercase;
  font-weight:700;
  font-size:1em;
  color:var(--mid); 
  padding:.6rem;
  border:2px solid var(--mid);
  border-radius:4px;
  cursor:pointer;
  transition:var(--slow);
}
button:hover {
  transition:var(--slow);
}
.reg {font-weight:400;}
.bold {font-weight:700;}
.small {font-size:var(--small);}
ul li{
  margin:1em 0;
}

/* HEADER */

.header {
  width:100vw;
  height:4rem;
  position:fixed;
  top:0;
  z-index:1000;
  background:#FFF;
  display:grid;
  grid-template-columns:3fr 1fr;
  justify-items:center;
  align-items:center;
  border-bottom:1px solid var(--mid);
  -webkit-transition: all ease-out .5s;
  -moz-transition: all ease-out .5s;
  -o-transition: all ease-out .5s;
  transition: all ease-out .5s;
}
.header-scroll {
  height:3.5rem;
  -webkit-transition: all ease-out .5s;
  -moz-transition: all ease-out .5s;
  -o-transition: all ease-out .5s;
  transition: all ease-out .5s;
}
.logo-div {
  margin:.35rem 0 0 0;
}
.logo {
  height:1.4rem;
}
.header-nav {display:none;}
.menu-btn {
  width:100%;
  height:100%;
  background:var(--dark);
  border:0;
  border-radius:0;
  color:#FFF;
  font-size:var(--small);
}

/* ==== FULL NAV MOBILE === */

.full-nav::-webkit-scrollbar{
  -webkit-appearance:none;
  -moz-appearance:none;
  -ms-appearance:none;
  -o-appearance:none;
  appearance:none;
  background:transparent;
}
.full-nav {
  width:100vw;
  height:0;
  left:0;
  bottom:0; 
  position:fixed;
  z-index:4;
  overflow-y:scroll;
  background:#FFF;
  text-align:left;
  transition:0.5s ease-out;
}
.full-nav-container {
  width:100vw;
  align-self:start;
  padding:8rem 14vw;
  text-align:left;
  font-size:1.5em;
  color:var(--dark);
}
.item {
  cursor:pointer;
  display:grid;
  grid-template-columns:2rem auto;
  margin:.6rem 0 0 0;
  font-weight:700;
}
.item:before{
  content:'\002B';
  color:var(--dark);
}
.active-menu:before{
  content:'\2212';
}
.subitem {
  height:0;
  overflow:auto;
  display:grid;
  justify-content:start;
  align-self:start;
  transition:0.5s;
}
.subitem ul, 
.subitem {
  margin-left:.9rem;
}
.subitem ul li a {
  color: var(--dark);
}
.subitem ul .subitem ul li,
.link {
  margin-bottom:2em;
  font-weight:400;
  margin-left:.7rem;
}

/* ==== DROPDOWN MENUS ==== */

.dropdown, 
.dropdown2{
  position:relative;
  display:initial;
}
.dropdown-content, 
.dropdown-content2 {
  width:100vw;
  position:fixed;
  left:0;
  display:none;
  grid-template-columns: 1fr 1fr 1fr;
  background-color:#FFF;
  z-index:4;
  text-align:left;
  line-height:1.4em;
  margin: 0;
  border-bottom:1px solid var(--dark);
  font-weight:300;
  padding: 3.5rem 5vw 0 5vw;
} 
.dropdown-content2 {
  grid-template-columns: 1fr 1fr;
}
.dropdown-content h3,
.dropdown-content2 h3 {
  font-size:var(--small);
  font-weight:400;
}
.dropdown-content div ul li,
.dropdown-content2 div ul li {
  margin:.6rem 0;
  font-weight:700;
  font-size:1em;
}
.dropdown-content div ul li a,
.dropdown-content2 div ul li a {
  color:var(--mid);
}
.dropdown-content div ul li a:hover,
.dropdown-content2 div ul li a:hover {
  color:var(--dark);
}
.dropdown-close,
.dropdown2-close {
  grid-column:1/3;
  padding:.6rem .3rem .2rem 0;
  border:1px solid var(--mid);
  border-radius:0;
  font-size:var(--xsmall);
  text-align:right;
  color:var(--light);
}
.dropdown-close {
  grid-column:1/4;
}
.dropdown-close:hover,
.dropdown2-close:hover {
  color:var(--mid);
}
.xsmall{
  font-size:var(--xsmall);
}
.cl-1,
.cl-2,
.cl-3,
.cl-one,
.cl-two {
  height:100%;
  border-left:1px solid var(--dark);
  padding:1.5rem 2rem 2rem 2rem;
}
.cl-1 {
  grid-column:1/2;
}
.cl-2 {
  grid-column:2/3;
}
.cl-3 {
  grid-column:3/4;
  border-right:1px solid var(--dark);
}
.cl-one {
  grid-column:1/2;
}
.cl-two {
  grid-column:2/3;
  border-right:1px solid var(--dark);
}
.dropdown-line {
  border-top:1px solid var(--dark);
  width:calc(100% + 5rem);
  margin:1.8rem 0 1.8rem -2rem;
}
.show {display:grid}
.light {
  color:var(--light);
}


/* LANDING */

.landing{
  width:100vw;
  height:100vh;
  margin:2.5rem 0 0 0;
  color:var(--xlight); 
  padding:20vh 12vw;
  text-align:center;
  background:var(--dark);
  opacity:.87;
}
.landing h1 {
  animation:slidedown 2s linear;
  animation-fill-mode:forwards; 
  margin:0 0 1em 0;
}

.landing-btn {
  color:var(--accent); 
  border:2px solid var(--accent);
  border-radius:4px;
  margin:4rem 0 0 0;
  text-transform:uppercase;
  padding:.6rem;
  font-weight:700;
}


@keyframes slidedown {
  0% {
    transform: translate(0,-2rem);
    opacity:0;
  }
  50% {
    transform: translate(0,-.8rem);
    opacity:0.75;
  }
  100% {
    transform: translate(0,0);
    opacity:1;
  }
}

/* FREE DELIVERY */

.free-delivery {
  width:100vw;
  padding:5em 15vw;
  display:grid;
  justify-items:center;
  align-items:center;
  background:var(--xlight);
  color:var(--dark);
}
.free-delivery-content {
  display:grid;
  grid-template-columns:auto auto;
  align-items:center;
  font-size:1.6em;
}
.free-delivery-content img {
  height:3em;
  margin:0 1em 0 0;
}


/* PRODUCTS */

.products {
  width:100vw;
  padding:12vh 12vw;
} 
.products-group {
  margin:1rem 0;
}
.products-group ul li a {
  color:var(--mid);
}
.products-group ul li a:hover {
  color:var(--dark);
}


/* PRINT FILE GUIDELINES */

.pri-div h2,
.pri-div h3 {
  font-size:1.8em;
  text-transform:capitalize;
  margin:1em 0 0.2em 0;
}
.pri-div h3 {
  font-size:1.2em;
  margin:2em 0 0.2em 0;
}
.pri-div h4 {
  font-size:1em;
  margin:1em 0 0.2em 0;
}
.indent {
  border-left:1px solid var(--mid);
  padding-left:1em;
  margin:1em 0;
}
.pri-div ul {
  list-style:square inside;
}
.pri-div ol {
  list-style:decimal inside;
  line-height:1.6em;
}
.pri-div ol li ol {
  list-style:lower-latin inside;
  padding:0 0 0 1rem;
}
.pri-div ul li {
  margin:.5rem 0;
  line-height:1.6em;
}


/* TESTIMONIALS */

.testimonials {
  width:100vw;
  padding:12vh 12vw;
  background:var(--xlight);
  text-align:center;
} 
.bubble blockquote {
  padding:3rem;
  position:relative;
  border:3px solid #FFF;
  border-radius:3px;
  color:var(--dark);
  margin:1rem 0;
  overflow-y:hidden;
  font-size:var(--small);
  line-height:1.6em;
}
.bubble blockquote:before, 
.bubble blockquote:after {
  content:"\201C";
  position:absolute;
  font-size:80px;
  padding:10px;
  line-height:1;
  color:var(--mid);
}
.bubble blockquote:before {
  top:0;
  left:10px;
}
.bubble blockquote:after {
  content:"\201D";
  right:10px;
  bottom:-30px;
}
.bubble cite {
  font-size:var(--small);
  color:var(--mid);
}


/* WHY PRINT WITH US */

.why-print {
  width:100vw;
  padding:18vh 15vw;
} 
.why-print h1 {
  text-align:center;
}
.why-print div {
  margin:1.4rem 0;
  text-align:center;
  display:grid;
  justify-items:center;
}
.icon {
  width:5rem;
}

.get-quote-section {
  width:100vw;
  padding:20vh 20vw;
  background:var(--mid);
  color:#FFF;
  display:grid;
  justify-items:center;
  text-align:center;
}
.get-quote-section p {
  font-size:1.2em;
}
.get-quote-section-btn {
  color:var(--dark);
  text-transform:uppercase;
  padding:.6rem;
  background:var(--accent);  
  border:2px solid var(--accent);  
  border-radius:4px;
  margin:2rem 0 0 0;
  font-weight:400;
  font-size:.9em;
}
.get-quote-section-btn:hover {
  background:var(--xlight);  
  border:2px solid var(--xlight);  
}

.page-div {
  padding:18vh 15vw;
}


/* GET A QUOTE */

.form-div {
  width:100vw;
  display:grid;
  justify-items:center;
}
form {
  width:100%;
  max-width:28rem;
}
form h1 {
  margin:.4em 0 0 0;
}
fieldset {
  width:100%;
  display:grid;
  margin:.4em 0;
}
label {
  font-size:var(--small);
  margin:0.8rem 0 0.1rem 0;
  text-transform:uppercase;
  font-weight:700;
  color:var(--light);
}
.labelfocus {
  color:var(--mid);
}
::placeholder {
  font-family:var(--font-family);
  color:var(--light);
}
select,
input[type=number],
input[type=text], 
input[type=email], 
input[type=tel], 
textarea {
  width:100%;
  padding:0.5rem 0;
  font-size:1rem;
  border-bottom:1px solid var(--dark);
  color:var(--dark);
  border-radius:0;
}
textarea {
  resize:none;
  height:9rem;
  line-height:1.5rem;
  padding:0.3rem 0;
}
select:focus,
input[type=number]:focus, 
input[type=text]:focus, 
input[type=email]:focus, 
input[type=tel]:focus, 
textarea:focus {
  background:var(--xlight);
}
.checkbox-fieldset {
  border-bottom:1px solid var(--mid);
  padding:0 0 0.8rem 0;
}
.checkbox-fieldset p {
  font-size:var(--small);
  text-transform:uppercase;
  font-weight:700;
  color:var(--light);
  margin:0.6rem 0 0 0;
}
.checkbox-input {
  display:block;
  position:relative;
  padding-left:2rem;
  margin:0.6rem 0 0.5rem 0;
  cursor:pointer;
  font-size:1rem;
  color:var(--mid);
  text-transform:capitalize;
  font-weight:400;
  -webkit-user-select:none;
  -moz-user-select:none;
  -ms-user-select:none;
  user-select:none;
}
.checkbox-input input{
  opacity:0;
  cursor:pointer;
  position:absolute;
}
.checkmark{
  position:absolute;
  top:2px;
  left:2.5px;
  height:15px;
  width:15px;
  background-color:transparent;
  border:1px solid var(--mid);
}
.checkbox-input:hover input ~ .checkmark{
  background-color: var(--mid);
}
.checkbox-input input:checked ~ .checkmark{
  background:#FFF;
}
.checkmark:after{
  content:"";
  position:absolute;
  display:none;
}
.checkbox-input input:checked ~ .checkmark:after {
  display:block
}
.checkbox-input .checkmark:after {
  top:0px;
  left:4.4px; 
  width:4px;
  height:10px;
  border:solid var(--mid);
  border-width:0 1px 1px 0;
  -webkit-transform:rotate(45deg);
  -ms-transform:rotate(45deg);
  transform:rotate(45deg);
}
.submit-btn {
  justify-self:center;
  font-size:1rem;
  text-transform:uppercase;
  margin:3rem auto 1rem auto;
  border:1px solid var(--dark);
  padding:0.5rem 0.8rem;
  cursor:pointer;
  color:var(--dark);
  justify-self:center;  
  font-weight:400;
}
.submit-btn:hover {
  background:var(--xlight);
}


/* FOOTER */

.footer{
  width:100vw;
  height:auto;
  background:var(--dark);
  padding:14vh 12vw 0 12vw;
  display:grid;
  grid-template-rows:auto auto 3.4rem; 
}
.footer-links {
  color:var(--light);
}
.footer-ul, 
.footer-link {
  text-transform:uppercase;
  font-weight:700;
  font-size:1em;
}
.footer-link a:hover {
  color:var(--mid);
}
.footer-category {
  font-weight:400;
  font-size:.8em;
}
.footer-bottom {
  text-transform:uppercase;
  padding:.5rem 0 0 0;
  height:3.4rem;
  width:100%;
  color:var(--light);
  font-size:var(--xsmall);
  text-align:center;
  border-top:1px solid var(--light);
  bottom:0;
}
.footer-br {
  display:none;
}

.error-page {
  width:100vw;
  height:100vh;
  display:block;
  text-align:center;
  padding: 25vh 20vw;
}

@media only screen and (min-width:600px) {

:root {
  --primary:2.8em;
  --secondary:2em;
}

.logo-div {
  justify-self:start;
  margin:.35rem 0 0 8vw;
}
.logo {
  height:1.4rem;
}
.menu-btn {
  font-size:var(--body);
}


/* LANDING */

.landing{
  padding:33vh 12vw;
  background:linear-gradient(0deg,rgba(47,73,121,.87),rgba(47,73,121,.87)),url('pru-bg.png');
  background-repeat:no-repeat;
  background-position:center;
  background-attachment:fixed;
  background-size:cover; 
}
.landing-btn {
  margin:6rem 0 0 0;
}

/* PRODUCTS */

.products {
  display:grid;
  grid-template-columns:1fr 1fr;
} 
.products header {
  grid-column:1/3;
}
.products-group {
  margin:1rem 0;
}
.page-div {
  padding:20vh 15vw;
}


/* WHY PRINT */

.why-print {
  padding:20vh 15vw;
} 
.why-print div {
  grid-template-columns: 4rem auto;
  grid-column-gap:3rem;
  align-items:center;
  text-align:left;
  justify-items:start;
}
.why-print div p {
  text-align:left;
}
.icon {
  width:4rem;
}


/* GET A QUOTE */

form h1 {
  margin:.4em 0 0 0;
}
fieldset {
  width:100%;
  display:grid;
  margin:.4em 0;
}


/* FOOTER */

.footer{
  width:100vw;
  height:100vh;
  background:var(--dark);
  padding:14vh 12vw 0 12vw;
  display:grid;
  grid-template-rows:auto auto 2.6rem; 
}
.footer-br {
  display:initial;
}
.footer-bottom {
  height:2.6rem;
}
.footer-bottom br {
  display:none;
}

}

@media only screen and (min-width:980px) {

:root {
  --primary:4em;
  --secondary:3.6em;
  --tertiary:.9em;
}


/* HEADER */

.header {
  grid-template-columns:auto auto;
  padding:.5rem 5vw 0 5vw;
  height:5.5rem;
  z-index:5;
}
.header-scroll {
  height:3.5rem;
  padding:0 5vw 0 5vw;
}
.logo-div {
  margin:0.35em 0 0 0;
}
.menu-btn {
  display:none;
}
.header-nav {
  display:grid;
  grid-template-columns: auto auto auto;
  justify-self:end;
}
.nav-btn {
  border:0;
  border-radius:0;
  margin:0 0 0 1.1rem;
  font-size: .9em;
}
.nav-btn:hover {
  color:var(--dark);
}
.get-quote-btn {
  margin:.2rem 0 .1rem 1.6rem;
  font-size:.9em;
  color:var(--accent);
  text-transform:uppercase;
  font-weight:700;
  padding:.6rem;
  border:2px solid var(--accent);
  border-radius:4px;
}
.get-quote-btn:hover {
  color:var(--dark);
  border:2px solid var(--mid);
}


/* LANDING */
.landing{
  padding:24vh 12vw;
}
.landing-btn {
  border:2px solid var(--xlight);
}
.landing-btn:hover {
  border:2px solid var(--accent);
  color: var(--accent);
}


/* PRODUCTS */

.products{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  grid-column-gap:5rem;
} 
.products header {
  grid-column:1/4;
}
.products-1 {
  grid-row:2/3;
}
.products-2 {
  grid-row:2/3;
}
.products-3 {
  grid-row:2/3;
}


/* TESTIMONIALS */

.quotes {
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
}
.bubble blockquote {
  margin:0 1rem;
}


/* WHY PRINT */

.why-print {
  padding:25vh 25vw;
}


/* GET A QUOTE */

.page-div {
  padding:25vh 15vw;
}
.page-primary {
  font-size:2.8em;
  margin:0;
}


/* FOOTER */

.footer{
  padding:16vh 12vw 0 12vw;
  grid-template-columns:auto auto;
  grid-template-rows: auto 2.6rem; 
}
.footer h1 {
  margin:3rem 4rem 0 0;
}
.footer-links {
  grid-row:1/2;
  grid-column:2/3;
  margin:3rem 0;
}
.footer-bottom {
  grid-row:2/3;
  grid-column:1/3;
}

}