/* ============================================================
   ENTRY — every page except the home page
   The frame WordPress content sits in: the cart, the checkout,
   the account area and ordinary pages like the returns policy.
   Loaded on every page except the front page.
   ============================================================ */

.page-main{background:var(--paper); display:block}
.page-main > .shell{padding:clamp(2rem,4vw,3.25rem) 0 clamp(4rem,8vw,6rem)}

.page-main .entry-title,.page-main .page-title{
  font-size:clamp(2.25rem,5vw,3.25rem); font-weight:800; letter-spacing:-.035em;
  margin:0 0 clamp(1.5rem,3vw,2.25rem);
}

/* Prose for pages written in the editor: policies, terms, anything typed. */
.entry-content{max-width:72ch}
.entry-content > * + *{margin-top:1.1rem}
.entry-content h2{font-size:clamp(1.5rem,2.6vw,2rem); font-weight:800; letter-spacing:-.025em; margin-top:2.5rem}
.entry-content h3{font-size:1.25rem; font-weight:700; margin-top:2rem}
.entry-content p,.entry-content li{font-size:1.0625rem; line-height:1.7; color:var(--body)}
.entry-content a{color:var(--blue-ink)}
.entry-content ul,.entry-content ol{padding-left:1.25rem}
.entry-content li + li{margin-top:.4rem}
.entry-content img{border-radius:var(--r); height:auto}
.entry-content blockquote{
  margin:1.5rem 0; padding:1rem 1.25rem; background:var(--white);
  border:1px solid var(--line); border-radius:var(--r);
}
.entry-content table{width:100%; border-collapse:collapse; background:var(--white); border:1px solid var(--line); border-radius:var(--r)}
.entry-content th,.entry-content td{padding:.7rem 1rem; border-bottom:1px solid var(--line); text-align:left}
.entry-content code{background:var(--card); padding:.1rem .35rem; border-radius:6px; font-size:.9em}

/* The cart and checkout are full-width blocks; prose width must not cage them. */
.page-main .entry-content:has(.wp-block-woocommerce-cart),
.page-main .entry-content:has(.wp-block-woocommerce-checkout){max-width:none}

/* 404 */
.page-404{text-align:left}
.page-404 .btns{display:flex; flex-wrap:wrap; gap:.85rem; margin-top:2rem}
