/* Main Grid */
#page.site > main {
  display              : grid;
  grid-auto-rows       : auto;
  align-content        : start; 
  grid-template-columns: 16px 1fr 16px;
  grid-template-areas:
    "pheader pheader pheader "
    ".       header  . "
    ".       widget  . "
    ".       msg     . "
    ".       main    . "
    ".       sideL   . "
    ".       sideR   . "
    ".       pager   . ";
}
@media (min-width: 744px) {
  #page.site > main {
    grid-template-columns: 42px 1fr 42px;
  }
}
@media (min-width: 1024px) {
  #page.site > main {
    grid-template-columns: 250px minmax(42px, 1fr) minmax(688px, 1122px) minmax(42px, 1fr);
    grid-template-areas  : 
      "pheader pheader pheader pheader"
      "sideL   .       widget  .      "
      "sideL   .       msg     .      "
      "sideL   .       main    .      "
      "sideL   .       pager   .      ";
  }
}
@media(min-width: 1784px) {
  .page-template-template-cart:has(.woocommerce-cart-form) #page.site > main,
  .page-template-template-checkout:has(#order_review) #page.site > main {
    grid-template-rows   : auto auto auto auto 1fr;
    grid-template-columns: 250px 42px 1fr 42px 400px;
    grid-template-areas  : 
      "pheader pheader pheader pheader pheader"
      "sideL   .       widget  .       .      "
      "sideL   .       msg     .       .      "
      "sideL   .       main    .       .      "
      "sideL   .       pager   .       sideR  ";
      
  }
}
#page.site .c-page-header {
  grid-area : pheader;
}
#page.site .header-widget-region {
  grid-area : widget;
}
#page.site > main .woocommerce-error,
#page.site > main .woocommerce-info,
#page.site > main .woocommerce-message,
#page.site > main .wc-empty-cart-message,
#page.site > main .woocommerce-notices-wrapper {
  grid-area : msg;
}
.page-template-template-checkout .entry-content > div > p {
  grid-column: 1/2;
}
.search-no-results                .c-shop-header,
.archive                          .c-main,
.product-template-default         .product,
.page-template-default            article,
.page-template-template-cart      main .return-to-shop,
.page-template-template-orderlist .c-order-list-overview,
.page-template-template-orderlist .c-order-list,
.page-template-template-cart       main > .c-cart-content,
.page-template-template-checkout   main > article {
  grid-area : main;
}
@media(min-width: 1784px) {
  .page-template-template-cart     main > .c-cart-content,
  .page-template-template-checkout main > article {
    grid-column : 3/6;
  }
}
.woocommerce-pagination {
  grid-area : pager;
}
@media(min-width: 1784px) {
  .page-template-template-checkout main::after,
  .page-template-template-cart     main::after {
    display: none;
  }
  .page-template-template-cart:has(.woocommerce-cart-form) #page.site > main::after,
  .page-template-template-checkout:has(#order_review) #page.site > main::after {
    grid-area : sideR;
    display   : block;
  }
}

/* Page Header Grid */
#page.site .c-page-header {
  display               : grid;
  grid-template-columns : subgrid;
  grid-template-areas  : 
      ". bread ."
      ". title ."
}
@media(min-width: 1024px) {
  #page.site .c-page-header {
    grid-template-areas  : 
      ". . bread . ."
      ". . title . ."
  }
}
#page.site .c-page-header > .c-breadcrumb {
  grid-area : bread;
}
#page.site .c-page-header > :nth-child(2) {
  grid-area: title;
}

/* Design */
#page.site > main {
  padding-bottom : 40px;
}
#page.site .header-widget-region {
  margin-bottom : 24px;
  width: calc(100vw - 32px);
}
@media(min-width: 744px) {
  #page.site .header-widget-region {
    width: calc(100vw - 80px);
  }
}
@media(min-width: 1024px) {
  #page.site .header-widget-region {
    width: calc(100vw - 336px);
    max-width: 1122px;
  }
}
#page.site .header-widget-region .col-full {
  width     : 100% !important;
  margin    : 0 auto !important;
  padding   : 0 !important;
  max-width : 100% !important;
}
#page.site .c-page-header {
  background-color : white;
  margin-bottom    : 24px;
  border-bottom    : 1px solid var(--c-border);
}
#page.site .c-page-header > .c-breadcrumb {
  margin-top    : 12px;
  margin-bottom : 20px;
  width         : 100%
}
#page.site .c-page-header > .c-breadcrumb > div {
  display : inline-block;
}
.page-numbers {
  border-radius : 3px;
}
@media(min-width: 1784px) {
  .page-template-template-cart:has(.woocommerce-cart-form) #page.site > main::after,
  .page-template-template-checkout:has(#order_review) #page.site > main::after {
    content          : '';
    display          : block;
    background-color : white;
    border-left      : 1px solid var(--c-border);
    margin-bottom    : -40px;
    margin-top       : -24px; 
  }
}


/* Account pages */
#page.site .woocommerce-MyAccount-content {
  width: 100%;
  float: none;
}
#page.site .woocommerce-MyAccount-navigation {
  display : none;
}