/* FOUNDATION: original theme rules, including original responsive fallbacks. */
/* All brand colors resolve to editable Global Styles palette values. */
html {
  scroll-behavior:smooth;
}
body {
  margin:0;
}
*,*::before,*::after {
  box-sizing:border-box;
}
img {
  max-width:100%;
  height:auto;
}
figure {
  margin:0;
}
a {
  text-underline-offset:.2em;
}
:where(a,button,input,textarea,select):focus-visible {
  outline:3px solid var(--wp--preset--color--gold-ink);
  outline-offset:5px;
}
:where([id]) {
  scroll-margin-top:2rem;
}
.wp-site-blocks > *, .ll-home > *, .ll-header > *, .ll-footer > * {
  margin-block-start:0;
}
.ll-shell {
  width:min(1200px, calc(100% - 64px));
  margin-inline:auto;
}
.ll-header {
  background:var(--wp--preset--color--white);
  padding:14px 0;
}
.ll-header-inner {
  gap:30px;
}
.ll-header-inner > * {
  margin-block-start:0;
}
.ll-brand {
  width:270px;
  flex-shrink:0;
}

.ll-brand-logo {
  width:100%;
}

.ll-tagline {
  font-family:var(--wp--preset--font-family--sans);
  font-weight:600;
  text-align:center;
  margin:3px 0 0;
}
.ll-navigation {
  margin-left:auto;
}
.ll-navigation .wp-block-navigation__container {
  gap:24px;
}
.ll-navigation a {
  text-decoration:none;
  padding-block:8px;
}
.ll-navigation a:hover {
  text-decoration:underline;
  text-decoration-color:var(--wp--preset--color--gold);
  text-decoration-thickness:2px;
}
.ll-header-buy {
  flex-shrink:0;
}
.wp-block-buttons {
  gap:14px;
}
.wp-block-button__link {
  transition:filter .15s ease, transform .15s ease;
  text-decoration:none;
}
.wp-block-button__link:hover {
  filter:brightness(.95);
  transform:translateY(-1px);
}
.is-style-outline > .wp-block-button__link {
  background:transparent;
  color:inherit;
  border:2px solid currentColor;
}
.ll-hero.wp-block-cover {
  padding:48px 0 32px;
  min-height:590px;
  color:var(--wp--preset--color--navy);
  isolation:isolate;
}
.ll-hero::after {
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:linear-gradient(90deg,rgba(255,255,255,.81),rgba(255,255,255,.48) 44%,transparent 70%);
  pointer-events:none;
}
.ll-hero .wp-block-cover__inner-container {
  z-index:1;
}
.ll-hero-grid {
  display:grid;
  grid-template-columns:1.06fr 1fr;
  gap:25px;
  align-items:center;
}
.ll-hero-grid > * {
  margin-block-start:0;
  min-width:0;
}
.ll-hero-heading {
  font-size:clamp(2.45rem,4.1vw,3.65rem);
  line-height:1.08;
  letter-spacing:-.055em;
  margin:0;
}
.ll-hero-intro {
  font-size:1.15rem;
  line-height:1.5;
  margin:18px 0 22px;
}
.ll-hero-visual {
  min-height:510px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0 62px 32px 0;
}
.ll-book {
  position:relative;
  z-index:2;
}
.ll-book img {
  display:block;
  width:100%;
}
.ll-props {
  bottom:-4px;
  margin:0;
  pointer-events:none;
}
.ll-props img {
  display:block;
}



.ll-credential {
  display:flex;
  gap:24px;
  align-items:center;
  justify-content:center;
  padding:0 20px;
}
.ll-credential + .ll-credential {
  border-left:1px solid #06295830;
  margin-top:0;
}
.ll-credential p {
  margin:0;
  font-size:1.1rem;
  font-weight:700;
  line-height:1.35;
}
.ll-credential-icon {
  width:65px;
  flex-shrink:0;
}
.ll-stories {
  background:var(--wp--preset--color--cream);
  padding:65px 0 70px;
}
.ll-eyebrow {
  font-family:var(--wp--preset--font-family--sans);
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.25em;
  text-transform:uppercase;
  display:flex;
  gap:18px;
  align-items:center;
  margin:0 0 18px;
}
.ll-eyebrow::before,.ll-eyebrow::after {
  content:"";
  display:inline-block;
  height:2px;
  width:40px;
  background:var(--wp--preset--color--gold);
  flex-shrink:0;
}
.ll-center {
  text-align:center;
  justify-content:center;
}
.ll-section-title {
  font-size:clamp(1.95rem,3.2vw,2.75rem);
  margin:0 0 16px;
}
.ll-section-intro {
  font-size:1.12rem;
  line-height:1.55;
  margin:0 auto 32px;
  max-width:900px;
}
.ll-stories-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
.ll-story-card {
  background:var(--wp--preset--color--white);
  border:1px solid #06295820;
  border-radius:9px;
  padding:12px 24px 27px;
  text-align:center;
  overflow:hidden;
}
.ll-story-card + .ll-story-card {
  margin-block-start:0;
}
.ll-story-image {
  margin:0 -8px 8px;
}
.ll-story-image img {
  width:100%;
  aspect-ratio:1.8;
  object-fit:contain;
  display:block;
}
.ll-story-card h3 {
  line-height:1.25;
  letter-spacing:-.045em;
  margin:10px 0;
}
.ll-story-card p {
  line-height:1.5;
  margin:0;
}
.ll-robin {
  background:var(--wp--preset--color--pale-blue);
  background-image:radial-gradient(ellipse at 80% 20%,#ffffffdd,transparent 70%);
  padding:54px 0 0;
}
.ll-robin-grid {
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:68px;
}
.ll-portrait {
  width:100%;
  max-width:365px;
  margin:0 auto;
}
.ll-portrait img {
  display:block;
  width:100%;
  mix-blend-mode:multiply;
}
.ll-robin-copy {
  padding:0 0 45px;
  margin-top:0;
}
.ll-biography p {
  font-size:1rem;
  line-height:1.65;
  margin:0 0 22px;
}

.ll-reviews {
  padding:54px 0 68px;
  position:relative;
}







.ll-footer {
  color:var(--wp--preset--color--white);
  background:var(--wp--preset--color--navy);
  position:relative;
  padding:75px 0 22px;
  isolation:isolate;
}
.ll-footer::before {
  content:"";
  position:absolute;
  z-index:-1;
  height:45px;
  top:-1px;
  left:0;
  width:100%;
  background:var(--wp--preset--color--white);
  border-radius:0 0 50% 50% / 0 0 100% 100%;
  border-bottom:5px solid var(--wp--preset--color--gold);
}

.ll-footer h2 {
  line-height:1.2;
  margin:0 0 12px;
}
.ll-footer-copy p {
  font-size:.95rem;
  line-height:1.5;
  margin:0;
}
.ll-footer-buttons {
  align-items:stretch;
  flex-wrap:nowrap;
  margin:0;
}
.ll-footer-buttons .wp-block-button {
  flex:1;
  display:flex;
}

.ll-footer-buttons .is-style-outline .wp-block-button__link {
  color:var(--wp--preset--color--white);
}
.ll-footer-meta {
  margin-top:32px;
  text-align:center;
  font-family:var(--wp--preset--font-family--sans);
  font-size:.75rem;
}
.ll-footer-meta p {
  margin:6px 0;
}
.ll-footer-meta a {
  color:inherit;
}
.ll-footer-credit {
  opacity:.8;
}
.ll-content {
  padding:60px max(24px,calc((100% - 1200px)/2));
  min-height:50vh;
}
.ll-content > .wp-block-post-content {
  padding:0;
}
.ll-content .wp-block-post-template {
  list-style:none;
  padding:0;
}
.ll-content .wp-block-post-template > li {
  padding-bottom:40px;
}
.ll-content .wp-block-post-featured-image img {
  max-height:460px;
  object-fit:cover;
}
/* Editor: keep decorative imagery selectable. Match site layout inside the canvas. */
.editor-styles-wrapper .ll-props {
  pointer-events:auto;
}
.editor-styles-wrapper .ll-home > * {
  margin-block-start:0;
}
@media (min-width:782px) and (max-width:1120px) {
 .ll-brand {
  width:225px;
}
 
 .ll-header-inner {
  gap:18px;
}
 .ll-navigation .wp-block-navigation__container {
  gap:16px;
}
 .ll-header-buy .wp-block-button__link {
  padding:12px 15px;
  font-size:.85rem;
}
 .ll-hero-visual {
  padding-right:25px;
}
 
 
 .ll-robin-grid {
  gap:38px;
}
}
@media (max-width:960px) {
 .ll-header-inner {
  flex-wrap:wrap;
  gap:10px 22px;
}
 .ll-header-buy {
  margin-left:auto;
}
 .ll-navigation {
  order:3;
  width:100%;
  margin:6px 0 0;
  justify-content:center!important;
}
 .ll-navigation .wp-block-navigation__container {
  justify-content:center;
}
 .ll-hero-heading {
  font-size:2.7rem;
}
 
 .ll-credential {
  gap:14px;
  padding:0 12px;
}
 .ll-credential-icon {
  width:50px;
}
 .ll-credential p {
  font-size:.95rem;
}
 .ll-story-card {
  padding-inline:14px;
}
 
 
 
 .ll-footer-buttons {
  justify-content:center;
  max-width:620px;
  width:100%;
  margin:auto;
}
}
@media (max-width:781px) {
 .ll-shell {
  width:calc(100% - 40px);
}
 .ll-hero.wp-block-cover {
  padding:36px 0 22px;
}
 .ll-hero-grid {
  grid-template-columns:1fr;
  gap:24px;
}
 .ll-hero-copy {
  margin:auto;
}
 .ll-hero-heading {
  font-size:clamp(2.45rem,7vw,3.4rem);
}
 
 
 
 
 
 .ll-credential {
  flex-direction:column;
  gap:10px;
  text-align:center;
}
 .ll-credential p {
  font-size:.85rem;
}
 .ll-stories {
  padding:45px 0;
}
 .ll-stories-grid {
  gap:16px;
}
 .ll-section-intro br {
  display:none;
}
 .ll-robin-grid {
  grid-template-columns:1fr 1.35fr;
  gap:26px;
}
 
 .ll-robin .ll-eyebrow {
  gap:10px;
}
 .ll-robin .ll-eyebrow::before,.ll-robin .ll-eyebrow::after {
  width:22px;
}
 .ll-section-title {
  font-size:1.95rem;
}
 .ll-robin .ll-section-title br {
  display:none;
}
 .ll-biography p {
  font-size:.93rem;
}
 
}
@media (max-width:599px) {
 .ll-header {
  padding:10px 0;
}
 .ll-header-inner {
  flex-wrap:nowrap;
  gap:14px;
}
 .ll-brand {
  width:220px;
  max-width:calc(100% - 50px);
}
 
 .ll-navigation {
  order:0;
  width:auto;
  margin:0 0 0 auto;
}
 .ll-navigation .wp-block-navigation__responsive-container-open {
  padding:12px;
}
 .ll-navigation .wp-block-navigation__responsive-container.is-menu-open {
  padding:30px;
}
 .ll-navigation .is-menu-open .wp-block-navigation__container {
  gap:20px;
  align-items:flex-start;
  font-size:1.4rem;
}
 
 .ll-hero-intro {
  font-size:1rem;
}
 .ll-hero .wp-block-button__link {
  font-size:.85rem;
  padding:12px 16px;
}
 
 
 
 .ll-credential {
  padding:0 8px;
}
 .ll-credential-icon {
  width:40px;
}
 .ll-credential p {
  font-size:.72rem;
}
 .ll-eyebrow {
  font-size:.6rem;
  letter-spacing:.2em;
  gap:12px;
}
 .ll-eyebrow::before,.ll-eyebrow::after {
  width:26px;
}
 .ll-section-title {
  font-size:1.85rem;
}
 .ll-section-intro {
  font-size:.98rem;
}
 .ll-stories-grid {
  grid-template-columns:1fr;
  gap:20px;
}
 .ll-story-card {
  padding:16px 28px 27px;
}
 .ll-story-image img {
  max-height:190px;
}
 
 
 .ll-robin-grid {
  grid-template-columns:1fr;
  gap:25px;
}
 .ll-portrait {
  max-width:265px;
  order:2;
}
 .ll-robin-copy {
  padding-bottom:0;
}
 .ll-robin .ll-eyebrow {
  justify-content:center;
}
 .ll-robin .ll-section-title {
  text-align:center;
}
 
 .ll-reviews {
  padding:42px 0 50px;
}
 
 
 
 
 .ll-footer {
  padding-top:65px;
}
 
 .ll-footer-copy br {
  display:none;
}
 .ll-footer-buttons {
  flex-wrap:wrap;
}
 .ll-footer-buttons .wp-block-button {
  flex:1 1 100%;
}
 
}
@media (prefers-reduced-motion:reduce) { html {
  scroll-behavior:auto;
} .wp-block-button__link {
  transition:none;
} }

/* COMPONENTS: consolidated Site Editor Additional CSS. */
/*==================================
   HEADER LOGO
==================================*/

.ll-brand-logo {
  aspect-ratio: auto !important;
  height: auto !important;
  overflow: visible !important;
}

.ll-brand-logo a {
  display: block !important;
  line-height: 0 !important;
}

.ll-brand-logo img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
}


/*==================================
   HEADER TAGLINE
==================================*/

.ll-tagline {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-size: 11px !important;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  white-space: nowrap;
}

.ll-tagline::before,
.ll-tagline::after {
  content: "";
  display: block;
  width: 34px;
  height: 2px;
  background: var(--wp--preset--color--gold);
  flex-shrink: 0;
}


/*==================================
   HEADER LAYOUT
==================================*/

.ll-header-inner {
  display: grid !important;
  grid-template-columns: auto 1fr auto;
  grid-template-rows: auto auto;
  align-items: center;
  column-gap: 28px;
  row-gap: 0;
  width: 100%;
}

.ll-brand {
  grid-column: 1;
  grid-row: 1 / 3;
  align-self: center;
}

.ll-social-links {
  grid-column: 2 / 4;
  grid-row: 1;
  justify-self: end;
  align-self: end;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin: 0 0 2px 0;
  padding-right: 8px;
  transform: translateY(4px);
}

.ll-header-inner > .wp-block-navigation {
  grid-column: 2;
  grid-row: 2;
  justify-self: end;
}

.ll-header-inner > .wp-block-buttons {
  grid-column: 3;
  grid-row: 2;
  justify-self: end;
}


/*==================================
   HEADER SOCIAL ICONS
==================================*/

.ll-social-set {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  padding: 0;
}

.ll-social-icon {
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--wp--preset--color--navy);
  color: var(--wp--preset--color--white);
  border-radius: 50%;
  text-decoration: none;
  transition:
    background-color 0.2s ease,
    color 0.2s ease,
    transform 0.2s ease;
}

.ll-social-icon svg {
  width: 22px;
  height: 22px;
  display: block;
  fill: currentColor;
}

.ll-social-icon svg path {
  fill: currentColor;
}

.ll-social-icon:hover {
  background: var(--wp--preset--color--gold);
  color: var(--wp--preset--color--white);
  transform: translateY(-1px);
}

.ll-social-icon:focus-visible {
  outline: 2px solid var(--wp--preset--color--gold);
  outline-offset: 3px;
}


/*==================================
   FACEBOOK + AMAZON ICONS
==================================*/

.ll-facebook span {
  color: var(--wp--preset--color--white);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 23px;
  font-weight: 600;
  line-height: 1;
  transform: translateY(1px) scaleX(0.86);
  transform-origin: center;
}

.ll-amazon {
  position: relative;
}

.ll-amazon-a {
  color: var(--wp--preset--color--white);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 21px;
  font-weight: 400;
  line-height: 1;
  transform: translateY(-4px) scaleX(0.92);
  transform-origin: center;
}

.ll-amazon-smile {
  position: absolute;
  width: 14px;
  height: 5px;
  left: 9px;
  bottom: 5px;
  border-bottom: 2px solid var(--wp--preset--color--white);
  border-radius: 0 0 50% 50%;
}


/*==================================
   HEADER ACTIVE PAGE
==================================*/

.ll-navigation .wp-block-navigation-item__content[aria-current="page"] {
  text-decoration: underline !important;
  text-decoration-color: var(--wp--preset--color--gold) !important;
  text-decoration-thickness: 2px !important;
  text-underline-offset: 8px;
}


/*==================================
   NURSING CREDENTIALS
==================================*/

.ll-credentials {
  margin: 0 !important;
  padding: 0 !important;
  background: var(--wp--preset--color--white) !important;
}

.ll-credentials-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr);
  align-items: center;
  width: 100% !important;
  max-width: 980px !important;
  margin: 0 auto !important;
  padding: 26px 0 !important;
  background: transparent !important;
}

.ll-credentials-grid > .wp-block-group {
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: 18px;
  min-height: 58px;
  margin: 0 !important;
  padding: 0 34px !important;
  box-sizing: border-box;
}

.ll-credentials-grid > .wp-block-group:not(:last-child) {
  border-right: 1px solid rgba(6, 41, 88, 0.18);
}

.ll-credentials-grid > .wp-block-group > .wp-block-image {
  width: 46px !important;
  height: 46px !important;
  flex: 0 0 46px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.ll-credentials-grid > .wp-block-group > .wp-block-image img {
  width: 42px !important;
  height: 42px !important;
  object-fit: contain;
}

.ll-credentials-grid > .wp-block-group > p {
  margin: 0 !important;
  color: var(--wp--preset--color--navy);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.25;
  text-align: left;
}


/*==================================
   STORY CARDS
==================================*/

.ll-story-card h3 {
  font-size: 1.35rem;
  min-height: 3.4rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.ll-story-card p {
  font-size: 1.08rem;
}


/*==================================
   INSIDE THE BOOK CTA
==================================*/

.ll-book-cta {
  width: 100% !important;
  justify-content: center !important;
  margin-top: 20px !important;
}


/*==================================
   MEET ROBIN
==================================*/

.ll-robin {
  padding-top: 0 !important;
}

.ll-robin-grid {
  align-items: start !important;
}

.ll-portrait {
  align-self: start !important;
  margin-top: 0 !important;
}

.ll-robin-copy {
  padding-top: 54px !important;
}

.ll-robin .ll-eyebrow {
  font-size: 0.72rem !important;
}

.ll-robin-button {
  justify-content: flex-start !important;
}


/*==================================
   FOOTER VERTICAL SPACING
==================================*/

.ll-footer .ll-footer-bottom {
  margin-block-start: 50px !important;
}

.ll-footer .ll-footer-credit {
  margin-block-start: 50px !important;
  margin-bottom: 0 !important;
}


/*==================================
   FOOTER TEXT SIZE
==================================*/

.ll-footer .ll-contact {
  font-size: 0.95rem !important;
  color: var(--wp--preset--color--gold) !important;
  letter-spacing: 0.05em;
}

.ll-footer .ll-footer-credit {
  font-size: 0.9rem !important;
  color: var(--wp--preset--color--gold) !important;
  letter-spacing: 0.09em;
}


/*==================================
   FOOTER CTA - 3 COLUMN
==================================*/

.ll-footer-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto auto !important;
  align-items: center !important;
  gap: 18px !important;
}

.ll-footer-copy {
  min-width: 0;
}


/*==================================
   FOOTER CTA HEADING
==================================*/

.ll-footer h2 {
  white-space: nowrap;
  font-size: 1.55rem !important;
}

.ll-footer-copy p {
  white-space: normal !important;
  max-width: none !important;
}


/*==================================
   FOOTER CTA BUTTONS
==================================*/

.ll-footer-buttons {
  display: contents !important;
}

.ll-footer-buttons .wp-block-button {
  width: auto !important;
  margin: 0 !important;
}

.ll-footer-buttons .wp-block-button__link {
  width: 185px !important;
  height: 55px !important;
  min-height: 55px !important;
  padding: 6px 14px !important;
  font-size: 0.95rem !important;
  line-height: 1.2 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}


/*==================================
   FOOTER BOTTOM ROW
==================================*/

.ll-footer-bottom {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  margin: 0 !important;
}


/*==================================
   FOOTER RIGHT COLUMN
==================================*/

.ll-footer-links {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  justify-content: center !important;
  gap: 14px !important;
  margin: 0 0 0 auto !important;
  padding: 0 !important;
}

.ll-footer-links > * {
  align-self: flex-end !important;
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
}


/*==================================
   FOOTER CONTACT
==================================*/

.ll-footer-links .ll-contact {
  align-self: flex-end !important;
  margin: 0 !important;
  text-align: right !important;
}


/*==================================
   FOOTER NAVIGATION
==================================*/

.ll-footer-links .wp-block-navigation {
  align-self: flex-end !important;
  margin: 0 !important;
  justify-content: flex-end !important;
}

.ll-footer-links .wp-block-navigation__container {
  justify-content: flex-end !important;
}


/*==================================
   FOOTER SOCIAL ALIGNMENT
==================================*/

.ll-footer-links .ll-social-footer,
.ll-footer-links .ll-social-set {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
}

.ll-footer-links .ll-social-icon {
  align-self: center !important;
  vertical-align: middle !important;
}


/*==================================
   FOOTER SOCIAL ICONS
==================================*/

.ll-footer .ll-social-footer .ll-social-icon {
  background: var(--wp--preset--color--gold) !important;
  color: var(--wp--preset--color--navy) !important;
}

.ll-footer .ll-social-footer .ll-facebook span,
.ll-footer .ll-social-footer .ll-amazon-a {
  color: var(--wp--preset--color--navy) !important;
}

.ll-footer .ll-social-footer .ll-amazon-smile {
  border-bottom-color: var(--wp--preset--color--navy) !important;
}

.ll-footer .ll-social-footer .ll-social-icon svg,
.ll-footer .ll-social-footer .ll-social-icon svg path {
  fill: var(--wp--preset--color--navy) !important;
}


/* Hover */

.ll-footer .ll-social-footer .ll-social-icon:hover {
  background: var(--wp--preset--color--white) !important;
  color: var(--wp--preset--color--navy) !important;
}

.ll-footer .ll-social-footer .ll-social-icon:hover .ll-facebook span,
.ll-footer .ll-social-footer .ll-social-icon:hover .ll-amazon-a {
  color: var(--wp--preset--color--navy) !important;
}

.ll-footer .ll-social-footer .ll-social-icon:hover .ll-amazon-smile {
  border-bottom-color: var(--wp--preset--color--navy) !important;
}

.ll-footer .ll-social-footer .ll-social-icon:hover svg,
.ll-footer .ll-social-footer .ll-social-icon:hover svg path {
  fill: var(--wp--preset--color--navy) !important;
}


/*==================================
   INTERIOR PAGE LAYOUT
==================================*/

.ll-content > .wp-block-post-title,
.ll-content > .wp-block-post-content {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.ll-content > .wp-block-post-content > * {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}


/*==================================
   INTERIOR HEADER HEIGHT
==================================*/

body:not(.home) .ll-header {
  padding-bottom: 0 !important;
  margin-bottom: -35px !important;
}


/*==================================
   INTERIOR PAGE SECTIONS
==================================*/

.ll-page-section {
  position: relative;
  z-index: 0;
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-top: 60px !important;
  padding-bottom: 60px !important;
}

.ll-page-section > * {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}


/*==================================
   INTERIOR PAGE CONTENT WIDTH
==================================*/

.ll-page-width > * {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.ll-page-width .is-layout-constrained > * {
  max-width: none !important;
}


/*==================================
   INTERIOR PAGE BACKGROUNDS
==================================*/

.ll-page-section::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
}

/* Warm-white section backgrounds are defined in the current interior rules below. */

.ll-bg-white::before {
  background: var(--wp--preset--color--white);
}


/* Top-only divider is defined in the current interior rules below. */


/*==================================
   PAGE TITLE EYEBROW
==================================*/

.ll-eyebrow-page-title {
  font-family: var(--wp--preset--font-family--sans);
  font-size: 1.44rem !important;
  font-weight: 600;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  gap: 18px;
  margin: 0 0 28px !important;
}

.ll-eyebrow-page-title::before,
.ll-eyebrow-page-title::after {
  content: "";
  display: inline-block;
  width: 40px;
  height: 2px;
  background: var(--wp--preset--color--gold);
  flex-shrink: 0;
}


/*==================================
   ABOUT ROBIN - INTRO
==================================*/

.ll-about-intro {
  width: 100%;
  padding: 0 0 55px !important;
}

.ll-about-grid {
  display: grid !important;
  gap: 48px !important;
  align-items: start !important;
}

.ll-about-grid > .wp-block-column {
  min-width: 0 !important;
}


/*==================================
   ABOUT ROBIN - PORTRAIT
==================================*/

.ll-about-portrait {
  width: 100% !important;
  margin: 0 !important;
}

.ll-about-portrait img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4 / 5 !important;
  object-fit: cover !important;
  object-position: center 28% !important;
  border-radius: 9px;
  box-shadow: 0 14px 32px rgba(6, 41, 88, 0.35);
}


/*==================================
   ABOUT ROBIN - COPY
==================================*/

.ll-about-copy {
  align-self: start !important;
}

.ll-about-copy .ll-eyebrow {
  margin-bottom: 18px !important;
}

.ll-about-copy h2 {
  margin: 0 0 22px !important;
  font-size: clamp(2rem, 3vw, 2.75rem) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.04em;
}

.ll-about-copy p:not(.ll-eyebrow):not(.ll-eyebrow-page-title) {
  margin: 0 0 20px !important;
  font-size: 1.05rem;
  line-height: 1.65;
}

.ll-about-copy p:last-child {
  margin-bottom: 0 !important;
}

/*==================================
   SECTION TOP SPACING
==================================*/

.ll-section-space-top {
  margin-top: 50px !important;
}

/*==================================
   POTTERY CTA
==================================*/

.ll-pottery-cta {
  margin-top: 24px !important;
}

.ll-pottery-cta .wp-block-button__link {
  min-width: 190px;
  padding: 12px 20px;
  border: 2px solid var(--wp--preset--color--navy) !important;
  background: transparent !important;
  color: var(--wp--preset--color--navy) !important;
  font-weight: 600;
}

.ll-pottery-cta .wp-block-button__link:hover {
  background: var(--wp--preset--color--navy) !important;
  color: var(--wp--preset--color--white) !important;
}

/*==================================
   CONTACT PAGE INFO COLUMN
==================================*/

.ll-contact-info {
  padding-left: 36px;
  padding-top: 43px;
}

/*==================================
   CONTACT PAGE INFO HEADINGS
==================================*/

.ll-contact-info h3 {
  margin-top: 45px !important;
  margin-bottom: 25px !important;
}

.ll-contact-info h3:first-child {
  margin-top: 0 !important;
}

.ll-contact-info p {
  margin-left: 25px !important;
}

.ll-contact-privacy {
  color: var(--wp--preset--color--muted);
  font-size: 0.9rem;
  line-height: 1.5;
}

/*==================================
   TABLET - HEADER / SOCIAL
==================================*/

@media (max-width: 1024px) {

  .ll-social-set {
  gap: 8px;
}

  .ll-social-icon {
  width: 31px;
  height: 31px;
  flex-basis: 31px;
}

  .ll-social-icon svg {
  width: 21px;
  height: 21px;
}
}


/*==================================
   TABLET - HERO
==================================*/

@media (max-width: 1024px) {

  

  

  .ll-hero-copy h1 {
  width: 100% !important;
}

  .ll-hero-copy p {
  width: 100% !important;
}

  .ll-hero-visual {
  margin-top: 35px !important;
}

  

  
}


/*==================================
   TABLET - FOOTER
==================================*/

@media (max-width: 960px) {

  

  

  .ll-footer-buttons .wp-block-button {
  justify-self: center !important;
}
}


/*==================================
   MOBILE - HEADER / SOCIAL
==================================*/

@media (max-width: 767px) {

  .ll-social-links {
  justify-content: center;
  justify-self: center;
  width: 100%;
  margin: 8px 0 10px;
  padding-right: 0;
  transform: none;
}

  .ll-social-set {
  justify-content: center;
  gap: 14px;
}

  .ll-social-icon {
  width: 32px;
  height: 32px;
  flex-basis: 32px;
}

  .ll-social-icon svg {
  width: 22px;
  height: 22px;
}
}


/*==================================
   MOBILE - HERO
==================================*/

@media (max-width: 767px) {

  .ll-hero-grid,
  .ll-hero-copy,
  .ll-hero-visual {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

  

  .ll-hero-copy {
  padding-left: 22px !important;
  padding-right: 22px !important;
}

  .ll-hero-copy h1 {
  width: 100% !important;
  letter-spacing: -1px !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}

  .ll-hero-copy p {
  width: 100% !important;
  font-size: 18px !important;
  line-height: 1.4 !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
}

  .ll-hero-copy .wp-block-buttons {
  gap: 14px !important;
}

  .ll-hero-visual {
  margin-top: 30px !important;
}

  

  
}


/*==================================
   MOBILE - FOOTER
==================================*/

@media (max-width: 767px) {

  .ll-footer-bottom {
  flex-direction: column !important;
  align-items: center !important;
  gap: 28px !important;
}

  .ll-footer-links {
  margin-left: 0 !important;
  align-items: center !important;
}

  .ll-footer-links > *,
  .ll-footer-links .ll-contact,
  .ll-footer-links .wp-block-navigation {
  align-self: center !important;
}

  .ll-footer-links .ll-contact {
  text-align: center !important;
}

  .ll-footer-links .wp-block-navigation,
  .ll-footer-links .wp-block-navigation__container,
  .ll-footer-links .ll-social-footer,
  .ll-footer-links .ll-social-set {
  justify-content: center !important;
}
}
/* DESKTOP HERO: moved from six block-level CSS fields. */
.ll-hero-copy {
  width: 660px !important;
  min-width: 660px !important;
  max-width: 660px !important;
  flex: 0 0 660px !important;
}
.ll-hero-heading {
  max-width: none !important;
}
.ll-hero-intro {
  max-width: 660px !important;
}
.ll-hero-visual {
  position: relative;
  overflow: visible;
  transform: translateX(150px);
}
.ll-book {
  width: 300px !important;
  min-width: 300px !important;
  max-width: 300px !important;
  height: auto !important;
  flex: 0 0 300px !important;
  flex-shrink: 0 !important;
  transform-origin: left center !important;
  transform: translateX(-140px) perspective(1000px) rotateY(-8deg) !important;
  box-shadow:
  3px 0 0 #f3efe7,
  6px 1px 0 #ddd6ca,
  9px 2px 0 #c8beb0,
  14px 16px 28px rgba(0, 0, 0, 0.36),
  5px 7px 10px rgba(0, 0, 0, 0.18) !important;
}
.ll-props {
  position: absolute !important;
  width: 350px !important;
  max-width: none !important;
  height: auto !important;
  right: -50px;
  top: 69%;
  transform: translateY(-50%);
  z-index: 2;
}


/* RESPONSIVE REFINEMENTS — review candidate, content-driven breakpoints.
   1120px: compact header / stacked hero; 781px: stacked interior columns;
   480px: credential list. Plugin-owned component styles remain in plugins. */
.ll-about-grid {
  grid-template-columns: minmax(0, 42fr) minmax(0, 58fr) !important;
}
.ll-content {
  overflow-x: clip;
}
.ll-content .wp-block-image {
  max-width: 100%;
}

@media (max-width: 1120px) {
  .ll-header-inner {
  width: calc(100% - 40px);
  grid-template-columns: minmax(0, 1fr) auto;
  column-gap: 14px;
  row-gap: 10px;
}
  .ll-header .ll-brand {
  grid-column: 1;
  grid-row: 1;
  width: 270px;
  max-width: 100%;
  min-width: 0;
}
  .ll-header-inner > .wp-block-navigation {
  grid-column: 2;
  grid-row: 1;
  width: auto;
  margin: 0;
  order: initial;
}
  .ll-header-inner > .wp-block-buttons {
  grid-column: 2;
  grid-row: 2;
}
  .ll-header .ll-social-links {
  grid-column: 1;
  grid-row: 2;
  justify-self: start;
  justify-content: flex-start;
  margin: 0;
  padding: 0;
  transform: none;
}
  .ll-header .ll-tagline {
  font-size: 10px !important;
  letter-spacing: .08em;
  gap: 6px;
}
  .ll-header .ll-tagline::before,
  .ll-header .ll-tagline::after {
  width: 18px;
}
  /* Keep WordPress's native accessible menu dialog, at a wider breakpoint. */
  .ll-header .wp-block-navigation__responsive-container:not(.is-menu-open) {
  display: none !important;
}
  .ll-header .wp-block-navigation__responsive-container-open {
  display: flex !important;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
}
  .ll-header .wp-block-navigation__responsive-container.is-menu-open {
  padding: 30px;
}
  .ll-header .is-menu-open .wp-block-navigation__container {
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
  font-size: 1.25rem;
}
  .ll-hero-grid {
  display: block !important;
  width: calc(100% - 40px) !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin-inline: auto;
  overflow: visible !important;
}
  .ll-hero-copy {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  flex: 0 1 auto !important;
  padding-inline: 0 !important;
}
  .ll-hero-copy h1 {
  max-width: 100% !important;
  font-size: clamp(2rem, 6vw, 3.625rem) !important;
  line-height: 1.08 !important;
}
  .ll-hero-copy p {
  max-width: 42rem !important;
}
  .ll-hero-visual {
  position: relative !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 500px !important;
  min-height: 470px !important;
  margin: 30px auto 0 !important;
  padding: 0 !important;
  transform: none !important;
  overflow: visible !important;
}
  .ll-book {
  position: absolute !important;
  width: 280px !important;
  min-width: 0 !important;
  max-width: 65% !important;
  height: auto !important;
  flex: 0 1 auto !important;
  left: 40% !important;
  top: 10px !important;
  right: auto !important;
  transform-origin: left center !important;
  transform: translateX(-50%) perspective(1000px) rotateY(-8deg) !important;
  box-shadow: 3px 0 0 #f3efe7, 6px 1px 0 #ddd6ca,
      9px 2px 0 #c8beb0, 14px 16px 28px #0000005c;
}
  .ll-props {
  position: absolute !important;
  width: min(58%, 290px) !important;
  min-width: 0 !important;
  max-width: 100% !important;
  right: 0 !important;
  left: auto !important;
  top: auto !important;
  bottom: 0 !important;
  transform: none !important;
}
  .ll-footer-grid {
  grid-template-columns: 1fr !important;
  text-align: center !important;
  gap: 16px !important;
}
  .ll-footer h2 {
  white-space: normal;
}
  .ll-footer-buttons .wp-block-button {
  justify-self: center;
}
}

@media (max-width: 781px) {
  .ll-header .ll-header-buy {
  display: none !important;
}
  .ll-header .ll-social-links {
  grid-column: 1 / -1;
  justify-self: center;
  justify-content: center;
}
  .ll-header .ll-tagline {
  font-size: 8px !important;
  letter-spacing: .06em;
}
  .ll-header .ll-tagline::before,
  .ll-header .ll-tagline::after {
  width: 16px;
}
  .ll-hero-visual {
  min-height: clamp(360px, 100vw, 470px) !important;
}
  .ll-book {
  width: 245px !important;
}
  .ll-props {
  width: min(58%, 255px) !important;
}
  .ll-hero-copy .wp-block-buttons {
  flex-wrap: wrap !important;
}
  .ll-credentials-grid {
  width: calc(100% - 40px) !important;
}
  .ll-credentials-grid > .wp-block-group {
  flex-direction: column;
  padding: 12px 8px !important;
  gap: 10px;
}
  .ll-credentials-grid > .wp-block-group > p {
  text-align: center;
  font-size: .85rem;
}
  .ll-about-grid {
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 28px !important;
}
  .ll-about-portrait {
  max-width: 420px !important;
  margin-inline: auto !important;
}
  .ll-page-section {
  padding-block: 36px !important;
}
  .ll-eyebrow-page-title {
  font-size: clamp(.9rem, 3.5vw, 1.44rem) !important;
  letter-spacing: .12em;
  gap: 10px;
  overflow-wrap: anywhere;
}
  .ll-eyebrow-page-title::before,
  .ll-eyebrow-page-title::after {
  width: clamp(12px, 4vw, 32px);
}
  .ll-contact-info {
  padding: 0;
}
  .ll-contact-info p {
  margin-left: 0 !important;
}
  .ll-robin-copy {
  padding-top: 32px !important;
}
  .ll-footer-links {
  max-width: 100%;
}
  .ll-footer-links .wp-block-navigation__container {
  flex-wrap: wrap;
  gap: 12px 18px;
}
  .ll-footer .ll-contact {
  overflow-wrap: anywhere;
}
  .ll-footer .ll-tagline {
  white-space: normal;
}
}

@media (max-width: 480px) {
  .ll-credentials-grid {
  grid-template-columns: minmax(0, 1fr);
}
  .ll-credentials-grid > .wp-block-group {
  flex-direction: row;
  justify-content: flex-start;
  padding: 14px 0 !important;
  border: 0;
}
  .ll-credentials-grid > .wp-block-group:not(:last-child) {
  border-right: 0;
  border-bottom: 1px solid #0629582e;
}
  .ll-credentials-grid > .wp-block-group > p {
  text-align: left;
  font-size: 1rem;
}
  .ll-hero-copy h1 {
  font-size: clamp(1.75rem, 7vw, 2.75rem) !important;
}
  .ll-hero-copy p {
  font-size: 1rem !important;
  line-height: 1.5 !important;
}
  .ll-content {
  padding-inline: 20px;
}
}

@media (prefers-reduced-motion: reduce) {
  .ll-social-icon {
  transition: none;
}
}

/* 1.1.1: inset the desktop header so the logo/tagline clear the browser edge.
   Scope to header only; leave the accepted footer and compact layouts intact. */
@media (min-width: 1121px) {
  .ll-header .ll-header-inner {
    width: min(1600px, calc(100% - 128px));
    margin-inline: auto;
  }
}



/* CURRENT INTERIOR LAYOUT DRAFT — 2026-10-23 */
/* INTERIOR SECTIONS: solid warm white, with no fades. */
.ll-bg-pale-blue::before {
  background: #faf9f6 !important;
}

/* Only the first actual section gets a divider. Leading style/HTML blocks
   do not affect this selection. Later pale sections have no line. */
.wp-block-post-content > .ll-page-section::after {
  content: none !important;
}
.wp-block-post-content > .ll-page-section:not(.ll-page-section ~ .ll-page-section)::after {
  content: "" !important;
  position: absolute;
  z-index: 0;
  top: 0;
  left: 50%;
  width: 100vw;
  height: 3px !important;
  transform: translateX(-50%);
  background: #f5f3ed !important;
  pointer-events: none;
}
/* ABOUT ROBIN: current About portrait, capped to the homepage image footprint. */
.ll-about-intro .ll-about-grid {
  grid-template-columns: minmax(0, 365px) minmax(0, 1fr) !important;
  align-items: start !important;
}
.ll-about-grid > .ll-about-portrait {
  width: 100% !important;
  max-width: 365px !important;
  margin: 0 auto !important;
}
.ll-about-grid .ll-about-portrait img {
  display: block !important;
  width: auto !important;
  max-width: 100% !important;
  max-height: 486px !important;
  margin: 0 auto !important;
  height: auto !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  object-position: center !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  mix-blend-mode: multiply;
}
.ll-about-intro > .ll-about-teaching {
  width: 100% !important;
  max-width: 100% !important;
  margin: 40px auto 0 !important;
}
.ll-about-teaching h2 {
  margin: 0 0 18px;
  font-size: 1.6rem;
  line-height: 1.2;
}
.ll-about-teaching p {
  margin: 0 0 20px;
  font-size: 1.08rem;
  line-height: 1.65;
}
.ll-about-teaching > :last-child { margin-bottom: 0; }
@media (max-width: 781px) {
  .ll-about-intro .ll-about-grid {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 28px !important;
  }
  .ll-about-intro > .ll-about-teaching { margin-top: 32px !important; }
}
@media (max-width: 599px) {
  .ll-about-grid > .ll-about-portrait { max-width: 265px !important; }
}

/* ABOUT ROBIN prototype: smaller body type throughout, compact icon headings.
   These classes are applied only to this page until the layout is approved. */
.wp-block-post-content:has(.ll-about-intro-section) p:not(.ll-eyebrow):not(.ll-eyebrow-page-title),
.wp-block-post-content:has(.ll-about-intro-section) li {
  font-size: 1.08rem !important;
  line-height: 1.65 !important;
}
.wp-block-post-content:has(.ll-about-intro-section) .ll-interior-story {
  width: 100%;
  max-width: 100% !important;
  margin: 48px auto 0 !important;
}
.wp-block-post-content:has(.ll-about-intro-section) .ll-interior-story-header {
  display: flex !important;
  align-items: center !important;
  gap: 20px !important;
  margin: 0 0 20px !important;
}
.ll-interior-story-header > .wp-block-image {
  flex: 0 0 90px;
  width: 90px !important;
  margin: 0 !important;
}
.ll-interior-story-header img {
  width: 90px !important;
  height: auto !important;
  object-fit: contain;
  display: block;
  mix-blend-mode: multiply;
}
.ll-interior-story-header > h2 {
  flex: 1;
  margin: 0 !important;
  font-size: 1.6rem !important;
  line-height: 1.25 !important;
}
.wp-block-post-content:has(.ll-about-intro-section) .ll-interior-story p { margin: 0 0 20px; }
.wp-block-post-content:has(.ll-about-intro-section) > .ll-page-section.ll-bg-white > p,
.wp-block-post-content:has(.ll-about-intro-section) > .ll-page-section.ll-bg-white > h2,
.wp-block-post-content:has(.ll-about-intro-section) > .ll-page-section.ll-bg-white > .ll-pottery-cta {
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 599px) {
  .ll-about-grid .ll-about-portrait img { max-height: 353px !important; }
  .wp-block-post-content:has(.ll-about-intro-section) .ll-interior-story-header { gap: 14px !important; }
  .ll-interior-story-header > .wp-block-image { flex-basis: 72px; width: 72px !important; }
  .ll-interior-story-header img { width: 72px !important; height: auto !important; }
  .ll-interior-story-header > h2 { font-size: 1.35rem !important; }
}

/* Shared site content edges and standard body paragraph size. */
:root { --ll-body-font-size: 1.08rem; }
.ll-story-card p,
.ll-biography p,
.ll-page-section p:not(.ll-eyebrow):not(.ll-eyebrow-page-title),
.ll-page-section li {
  font-size: var(--ll-body-font-size) !important;
}
.ll-content {
  padding-inline: max(32px, calc((100% - 1200px) / 2)) !important;
}
@media (min-width: 1121px) {
  .ll-header .ll-header-inner {
    width: min(1200px, calc(100% - 64px)) !important;
    margin-inline: auto !important;
  }
}
@media (max-width: 781px) {
  .ll-content { padding-inline: 20px !important; }
}

/* Interior sequence: warm white, solid Meet Robin blue, white, repeat.
   Count actual sections, ignoring leading HTML/style blocks. */
.wp-block-post-content > .ll-page-section:nth-child(3n + 1 of .ll-page-section)::before {
  background: #faf9f6 !important;
}
.wp-block-post-content > .ll-page-section:nth-child(3n + 2 of .ll-page-section)::before {
  background: #eaf5fc !important;
}
.wp-block-post-content > .ll-page-section:nth-child(3n of .ll-page-section)::before {
  background: #ffffff !important;
}
/* Proportional photos meet the bottom edge of their section. */
.ll-page-section.ll-photo-section {
  padding-bottom: 0 !important;
}
.ll-photo-section > .ll-photo-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 365px) minmax(0, 1fr);
  gap: 48px;
  align-items: end;
  margin: 0 !important;
  padding: 0 !important;
}
.ll-photo-grid > .ll-section-photo {
  width: 100%;
  margin: 0 !important;
  line-height: 0;
  align-self: end;
  text-align: center;
}
.ll-photo-grid > .ll-section-photo img {
  display: block;
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: 486px !important;
  margin: 0 auto !important;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
.ll-photo-grid > .ll-photo-copy {
  min-width: 0;
  align-self: center;
  padding-bottom: 40px;
  margin: 0 !important;
}
.ll-photo-copy > h2 { margin-top: 0; }
.ll-photo-copy > :last-child { margin-bottom: 0; }
.wp-block-post-content:has(.ll-about-intro-section) .ll-interior-story {
  margin: 0 !important;
}
@media (max-width: 781px) {
  .ll-photo-section > .ll-photo-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }
  .ll-photo-grid > .ll-photo-copy { order: 1; padding-bottom: 0; }
  .ll-photo-grid > .ll-section-photo { order: 2; }
}
@media (max-width: 599px) {
  .ll-photo-grid > .ll-section-photo img { max-height: 353px !important; }
}

/* File-backed portrait pottery thumbnails; preserve the supplied 866:1000 composition. */
.ll-photo-copy > .ll-pottery-gallery {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  width: 100%;
  margin: 24px 0 !important;
}
.ll-pottery-gallery > .ll-pottery-thumb {
  width: 100% !important;
  min-width: 0;
  margin: 0 !important;
  line-height: 0;
}
.ll-pottery-thumb img {
  display: block;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 866 / 1000;
  object-fit: contain;
}
@media (max-width: 599px) {
  .ll-photo-copy > .ll-pottery-gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Featured page: manual-play launch video and media cards. */
.ll-featured-hero-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr);
  align-items: center;
  gap: 48px;
}
.ll-featured-hero-grid > * { min-width: 0; margin: 0 !important; }
/* Shared large serif headings on About, Book and Featured. */
.ll-about-intro-section .ll-photo-copy > h2,
.ll-book-intro .ll-book-intro-copy > h1,
.ll-featured-intro-copy > h2 {
  font-family: var(--wp--preset--font-family--serif);
  font-size: clamp(2rem, 3vw, 2.75rem);
  font-weight: 700;
  letter-spacing: -.045em;
  line-height: 1.12;
  margin-top: 0;
}
.ll-featured-intro-copy .ll-eyebrow-page-title {
  justify-content: flex-start;
}
.ll-feature-video { width: 100%; margin: 0 !important; }
.ll-feature-video video {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: contain;
  background: #062958;
  border-radius: 8px;
}
.ll-page-section .ll-featured-video-wrap p.ll-video-caption {
  margin: 12px 0 0;
  font-size: .85rem !important;
  color: var(--wp--preset--color--muted);
}
.ll-section-heading {
  display: flex !important;
  align-items: center !important;
  gap: 20px !important;
  margin: 0 0 24px !important;
}
.ll-featured-media-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px;
}
.ll-featured-media-grid > .ll-featured-media-card {
  min-width: 0;
  margin: 0 !important;
  padding: 28px;
  border: 1px solid rgba(6, 41, 88, .12);
  border-radius: 8px;
  background: #fff;
}
.ll-page-section .ll-featured-media-card p.ll-feature-meta {
  font-family: var(--wp--preset--font-family--sans);
  font-size: .75rem !important;
  font-weight: 600;
  letter-spacing: .06em;
}
.ll-featured-media-card h3 { margin-top: 0; font-size: 1.35rem; }
.ll-featured-media-card > :last-child { margin-bottom: 0; }
@media (max-width: 781px) {
  .ll-featured-hero-grid,
  .ll-featured-media-grid { grid-template-columns: minmax(0, 1fr); }
  .ll-featured-hero-grid { gap: 24px; }
}
@media (max-width: 599px) {
  .ll-section-heading { gap: 14px !important; }
  .ll-featured-media-grid > .ll-featured-media-card { padding: 24px 20px; }
}

/* Desktop feedback: continuous section backgrounds and aligned photo edges. */
.wp-block-post-content > .ll-page-section {
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
}
.ll-robin .ll-robin-grid { align-items: end !important; margin-bottom: 0 !important; }
.ll-robin .ll-portrait { align-self: end !important; margin-bottom: 0 !important; line-height: 0; }
.ll-robin .ll-portrait img { display: block !important; }
.ll-robin { padding-bottom: 0 !important; }
.ll-photo-grid > .ll-section-photo { text-align: right; }
.ll-photo-grid > .ll-section-photo img { margin-left: auto !important; margin-right: 0 !important; }
.ll-about-writing-section > .ll-interior-story + .ll-interior-story { margin-top: 44px !important; }
.ll-page-section.ll-about-pottery-section { padding-bottom: 60px !important; }
.ll-about-pottery-section > .ll-photo-grid { align-items: start; }
.ll-about-pottery-section .ll-section-photo,
.ll-about-pottery-section .ll-photo-copy { align-self: start; }
.ll-about-pottery-section .ll-photo-copy { padding-bottom: 0; }
.ll-featured-media-card > p.ll-feature-meta { margin-bottom: 16px !important; }
.ll-featured-media-card > h3 { margin-bottom: 24px !important; }
.ll-featured-media-card > h4 { margin: 28px 0 16px !important; font-size: 1.2rem; color: #062958; }
.ll-featured-media-card .ll-feature-source { margin-top: 28px !important; }
.ll-featured-media-card a { text-decoration: underline; text-underline-offset: .2em; }
@media (max-width:781px) {
  .ll-page-section.ll-about-pottery-section { padding-bottom: 36px !important; }
}

/* 1.2.7 — Commerce pages share the interior background and centered eyebrow. */
/* Cancel the shared interior overlap for WooCommerce Cart. */
body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-order-received) .ll-header {
  margin-bottom: 0 !important;
  /* Screenshot comparison: divider +11px; compensate in main padding. */
  padding-bottom: 25px !important;
}
body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-order-received) main {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 59px max(32px, calc((100% - 1200px) / 2)) 72px !important;
  border-top: 3px solid #f5f3ed;
  background: #faf9f6;
}
body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-order-received) main .ll-commerce-title {
  display: flex !important;
  justify-content: center;
  align-items: center;
  width: 100% !important;
  max-width: none !important;
  margin: 0 auto 40px !important;
  padding: 0 !important;
  text-align: center;
  color: var(--wp--preset--color--navy, #062958);
  font-family: var(--wp--preset--font-family--sans, Montserrat, Arial, sans-serif);
  font-size: 1.44rem !important;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: .25em;
  text-transform: uppercase;
  gap: 18px;
}
body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-order-received) main .ll-commerce-title::before,
body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-order-received) main .ll-commerce-title::after {
  content: "";
  width: 40px;
  height: 2px;
  flex: 0 0 40px;
  background: var(--wp--preset--color--gold, #ffb900);
}
body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-order-received) main .wp-block-post-content {
  width: 100% !important;
  max-width: 1200px !important;
  margin-inline: auto !important;
  padding: 0 !important;
}
body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-order-received) main .woocommerce,
body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-order-received) main .woocommerce-cart-form {
  width: 100% !important;
  max-width: 1200px !important;
  margin-inline: auto !important;
}
body.woocommerce-cart .woocommerce table.shop_table {
  width: 100%;
  margin-inline: auto;
  background: #fff;
  border: 1px solid #d5dce5;
  border-radius: 14px;
  overflow: hidden;
}
body.woocommerce-cart .woocommerce table.shop_table th,
body.woocommerce-cart .woocommerce table.shop_table td { text-align: left; }
body.woocommerce-cart .woocommerce .cart-collaterals {
  display: flex;
  justify-content: flex-end;
  width: 100%;
  margin: 36px auto 0;
}
body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals {
  float: none !important;
  width: min(100%, 520px) !important;
  max-width: 520px;
  margin: 0 0 0 auto !important;
}
body.woocommerce-cart .woocommerce .cart_totals > h2 { text-align: center; }
body.woocommerce-cart .woocommerce .wc-proceed-to-checkout { padding-bottom: 0; }
body.woocommerce-cart .woocommerce .wc-proceed-to-checkout .checkout-button {
  display: block;
  width: 100%;
  margin-bottom: 0;
  border-radius: 10px;
}
body.woocommerce-cart .woocommerce .return-to-shop,
body.woocommerce-cart .woocommerce .cart-empty { text-align: center; }
@media (max-width: 781px) {
  body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-order-received) main { padding: 23px 20px 48px !important; }
  body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-order-received) main .ll-commerce-title { font-size: 1.16rem !important; margin-bottom: 28px !important; gap: 12px; }
  body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-order-received) main .ll-commerce-title::before,
  body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-order-received) main .ll-commerce-title::after { width: 28px; flex-basis: 28px; }
}

/* Preserve WooCommerce's six-column spanning table cell. A flex td breaks colspan. */
body.woocommerce-cart .woocommerce .woocommerce-cart-form td.actions {
  display: table-cell;
  text-align: left;
}
body.woocommerce-cart .woocommerce .woocommerce-cart-form td.actions .coupon {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  vertical-align: middle;
  gap: 10px;
  float: none !important;
  width: auto;
  max-width: 100%;
  margin: 0 5px 0 0;
  padding: 0 !important;
}
body.woocommerce-cart .woocommerce .woocommerce-cart-form td.actions .coupon #coupon_code {
  float: none !important;
  margin: 0 !important;
  width: 175px;
  max-width: 100%;
}
body.woocommerce-cart .woocommerce .woocommerce-cart-form td.actions button {
  display: inline-block;
  vertical-align: middle;
  float: none !important;
  width: auto !important;
  margin: 0 !important;
}
@media (max-width: 599px) {
  body.woocommerce-cart .woocommerce .woocommerce-cart-form td.actions { display: block; }
  body.woocommerce-cart .woocommerce .woocommerce-cart-form td.actions .coupon {
    display: flex;
    width: 100%;
    margin: 0 0 5px;
  }
}
/* Book Orders injects Add to Cart directly after Review Your Selection. */
.ll-copy-customization > .ll-selection-review {
  margin-block-end: 5px !important;
  vertical-align: top;
}
.ll-copy-customization > .ll-selection-review + .ll-add-to-cart {
  margin-inline-start: 5px !important;
}

/* Commerce typography follows the interior body copy. */
body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-order-received) main .woocommerce {
  font-family: var(--wp--preset--font-family--sans, Montserrat, Arial, sans-serif);
  font-size: 1.08rem;
  line-height: 1.6;
  color: #062958;
}
body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-order-received) main .woocommerce :is(input, select, textarea, button) {
  font: inherit;
}
body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-order-received) main .woocommerce :is(h2, h3) {
  color: #062958;
  font-size: 1.5rem;
  line-height: 1.35;
}
body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-order-received) main .woocommerce :is(.button, button.button, input.button) {
  border-radius: 10px;
  padding: 14px 22px;
  background: #ffb900;
  color: #062958;
  font-weight: 700;
  line-height: 1.4;
  text-decoration: none;
}
body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-order-received) main .woocommerce :is(.button, button.button):disabled {
  opacity: .5;
}
body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-order-received) main .woocommerce a:not(.button) {
  color: #062958;
  text-underline-offset: .2em;
}
body:is(.woocommerce-cart, .woocommerce-checkout, .woocommerce-order-received) main .woocommerce :is(.woocommerce-message, .woocommerce-info) {
  border-top-color: #062958;
  background: #eaf5fc;
  color: #062958;
}
body.woocommerce-cart .woocommerce table.cart .product-thumbnail img {
  width: 72px;
  height: auto;
}
/* Classic Checkout: stack the billing/shipping fields in one left column,
   keep the native order review and Square payment fields together on the right. */
body.woocommerce-checkout form.checkout {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  column-gap: 36px;
  row-gap: 20px;
}
body.woocommerce-checkout form.checkout > * { grid-column: 1 / -1; min-width: 0; }
body.woocommerce-checkout form.checkout > #customer_details {
  grid-column: 1;
  grid-row: 1 / span 3;
  margin: 0;
  padding: 28px;
  border: 1px solid #d5dce5;
  border-radius: 14px;
  background: #fff;
}
body.woocommerce-checkout #customer_details > :is(.col-1, .col-2) {
  float: none;
  width: 100%;
  max-width: none;
}
body.woocommerce-checkout #customer_details .col-2 { margin-top: 28px; }
body.woocommerce-checkout #customer_details h3 { margin-top: 0; }
body.woocommerce-checkout form.checkout > #order_review_heading {
  grid-column: 2;
  grid-row: 1;
  margin: 0;
}
body.woocommerce-checkout form.checkout > #order_review {
  grid-column: 2;
  grid-row: 2;
  min-width: 0;
}
body.woocommerce-checkout .woocommerce table.shop_table {
  width: 100%;
  border: 1px solid #d5dce5;
  border-radius: 14px;
  background: #fff;
}
body.woocommerce-checkout .woocommerce table.shop_table :is(th, td) {
  text-align: left;
  padding: 14px 16px;
  overflow-wrap: anywhere;
}
body.woocommerce-checkout .woocommerce table.shop_table .amount {
  white-space: nowrap;
  overflow-wrap: normal;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table thead th:last-child {
  width: 35%;
  min-width: 150px;
  white-space: nowrap;
  overflow-wrap: normal;
}
body.woocommerce-checkout .woocommerce .form-row :is(input.input-text, textarea, select) {
  width: 100%;
  max-width: 100%;
  padding: 11px 12px;
  border: 1px solid #9cabbc;
  border-radius: 7px;
  background: #faf9f6;
  color: #062958;
}
body.woocommerce-checkout .woocommerce .select2-container .select2-selection--single {
  min-height: 46px;
  border: 1px solid #9cabbc;
  border-radius: 7px;
  background: #faf9f6;
}
body.woocommerce-checkout .woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 44px;
  padding-left: 12px;
}
body.woocommerce-checkout .woocommerce .select2-container--default .select2-selection--single .select2-selection__arrow { height: 44px; }
body.woocommerce-checkout .woocommerce #payment {
  border: 1px solid #d5dce5;
  border-radius: 14px;
  background: #fff;
}
body.woocommerce-checkout .woocommerce #payment div.payment_box {
  background: #eaf5fc;
  color: #062958;
}
body.woocommerce-checkout .woocommerce #payment div.payment_box::before { border-bottom-color: #eaf5fc; }
body.woocommerce-checkout #payment #place_order {
  float: none;
  width: 100%;
  margin: 16px 0 0;
}
/* Order Confirmation: retain WooCommerce's real status message and all metadata. */
body.woocommerce-order-received .woocommerce-order > .woocommerce-notice {
  padding: 22px 24px;
  border-radius: 12px;
  background: #eaf5fc;
  text-align: center;
}
body.woocommerce-order-received .woocommerce ul.order_details {
  display: flex;
  flex-wrap: wrap;
  gap: 22px 30px;
  margin: 28px 0 36px;
  padding: 24px;
  border: 1px solid #d5dce5;
  border-radius: 14px;
  background: #fff;
}
body.woocommerce-order-received .woocommerce ul.order_details li {
  float: none;
  margin: 0;
  padding: 0;
  border-right: 0;
  flex: 1 1 170px;
  overflow-wrap: anywhere;
}
body.woocommerce-order-received .woocommerce ul.order_details li strong { font-size: 1rem; }
body.woocommerce-order-received .woocommerce .woocommerce-customer-details .woocommerce-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px;
}
body.woocommerce-order-received .woocommerce .woocommerce-customer-details .woocommerce-columns::before,
body.woocommerce-order-received .woocommerce .woocommerce-customer-details .woocommerce-columns::after {
  content: none;
  display: none;
}
body.woocommerce-order-received .woocommerce .woocommerce-customer-details .woocommerce-column {
  float: none;
  width: 100%;
  min-width: 0;
}
body.woocommerce-order-received .woocommerce .woocommerce-customer-details address {
  height: auto;
  padding: 24px;
  border: 1px solid #d5dce5;
  border-radius: 14px;
  background: #fff;
  overflow-wrap: anywhere;
}
/* View Cart stays in the header's existing social row on desktop and mobile. */
.ll-header .ll-social-links { gap: 16px; }
.ll-view-cart {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  white-space: nowrap;
  margin: 0;
  color: inherit;
  font-family: var(--wp--preset--font-family--sans, Montserrat, Arial, sans-serif);
  font-size: .85rem;
  font-weight: 600;
  line-height: 1.4;
  text-decoration: underline;
  text-underline-offset: .2em;
}
.ll-header .ll-view-cart { color: #062958; }
.ll-view-cart svg { width: 19px; height: 19px; flex-shrink: 0; }
@media (max-width: 781px) {
  body.woocommerce-checkout form.checkout { display: block; }
  body.woocommerce-checkout form.checkout > #customer_details { margin-bottom: 28px; padding: 22px; }
  body.woocommerce-checkout form.checkout > #order_review_heading { margin-bottom: 18px; }
  body.woocommerce-order-received .woocommerce .woocommerce-customer-details .woocommerce-columns { grid-template-columns: minmax(0, 1fr); }
}

/* WooCommerce block confirmation uses core/heading rather than post-title. */
body.woocommerce-order-received main h1 {
  display: flex !important;
  justify-content: center;
  align-items: center;
  width: 100% !important;
  max-width: none !important;
  margin: 0 auto 40px !important;
  padding: 0 !important;
  text-align: center;
  color: var(--wp--preset--color--navy, #062958);
  font-family: var(--wp--preset--font-family--sans, Montserrat, Arial, sans-serif);
  font-size: 1.44rem !important;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: .25em;
  text-transform: uppercase;
  gap: 18px;
}
body.woocommerce-order-received main h1::before,
body.woocommerce-order-received main h1::after {
  content: "";
  width: 40px;
  height: 2px;
  flex: 0 0 40px;
  background: var(--wp--preset--color--gold, #ffb900);
}

/* Keep field heights equal whether Woo uses SelectWoo/Select2 or a native select. */
body.woocommerce-checkout .woocommerce .form-row input.input-text,
body.woocommerce-checkout .woocommerce .form-row select {
  height: 46px;
  min-height: 46px;
  padding: 10px 12px;
  line-height: 24px;
  font-size: .95rem;
  box-sizing: border-box;
}
body.woocommerce-checkout .woocommerce .form-row .select2-container .select2-selection--single {
  display: block;
  height: 46px;
  min-height: 46px;
  padding: 0;
  box-sizing: border-box;
  font-size: .95rem;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table {
  table-layout: fixed;
  overflow: hidden;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table :is(th, td) {
  overflow-wrap: break-word;
  word-break: normal;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table ul#shipping_method {
  margin: 0;
  padding: 0;
  list-style: none;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table ul#shipping_method li {
  margin: 0;
  padding: 0;
  text-indent: 0;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table ul#shipping_method label {
  display: inline;
  white-space: normal;
  word-break: normal;
  overflow-wrap: normal;
}
/* Keep every metadata row beside the cover, even below its bottom edge. */
body.woocommerce-order-received main .woocommerce-table__product-name.product-name {
  position: relative;
  padding-left: 96px !important;
  height: 116px;
  box-sizing: border-box;
}
body.woocommerce-order-received main .ll-order-thumbnail {
  display: block;
  position: absolute;
  top: 16px;
  left: 16px;
  float: none;
  width: 64px;
  margin: 0 16px 8px 0;
  line-height: 0;
}
body.woocommerce-order-received main .ll-order-thumbnail img {
  display: block;
  width: 64px;
  max-width: 100%;
  height: auto;
  max-height: 96px;
  object-fit: contain;
  border-radius: 3px;
}
body.woocommerce-order-received main :is(.wc-block-order-confirmation-totals__product, .product-name) .wc-item-meta {
  overflow-wrap: break-word;
}
@media (max-width: 781px) {
  body.woocommerce-order-received main h1 {
    font-size: 1.16rem !important;
    margin-bottom: 28px !important;
    gap: 12px;
  }
  body.woocommerce-order-received main h1::before,
  body.woocommerce-order-received main h1::after { width: 28px; flex-basis: 28px; }
  body.woocommerce-checkout .woocommerce-checkout-review-order-table thead th:last-child { min-width: 0; width: 36%; }
}

/* 1.2.8: vertically center enhanced dropdown text, independently of inherited line-height. */
body.woocommerce-checkout .woocommerce .form-row .select2-container .select2-selection--single {
  display: flex !important;
  align-items: center;
  padding: 0 !important;
}
body.woocommerce-checkout .woocommerce .form-row .select2-container .select2-selection__rendered {
  width: 100%;
  height: auto;
  line-height: 1.4 !important;
  margin: 0 !important;
  padding-block: 0 !important;
}
body.woocommerce-checkout .woocommerce .form-row select {
  padding-block: 0;
  line-height: normal;
}
body.woocommerce-checkout .ll-checkout-item-cover {
  display: block;
  margin: 0 0 14px;
  line-height: 0;
}
body.woocommerce-checkout .ll-checkout-item-cover img {
  display: block;
  width: 72px;
  max-width: 100%;
  height: auto;
  max-height: 110px;
  object-fit: contain;
  border-radius: 3px;
}
/* Quantity is fixed at one. Hide the now-empty action row while Update cart is
   disabled; it becomes visible if Woo enables that control after an edit. */
body.woocommerce-cart .woocommerce .woocommerce-cart-form tr:has(> td.actions button[name="update_cart"]:disabled):not(:has(.coupon)) { display: none; }

/* 1.2.9: keep native Order Received totals in separate cells, with labels
   beside the amount column. Emphasize the grand total at the bottom only. */
body.woocommerce-order-received .wc-block-order-confirmation-totals__table {
  table-layout: fixed;
  width: 100%;
}
body.woocommerce-order-received .wc-block-order-confirmation-totals__table thead th:last-child {
  width: 150px;
  font-weight: 400 !important;
  text-align: right;
}
body.woocommerce-order-received .wc-block-order-confirmation-totals__table tfoot th {
  text-align: right !important;
  padding-right: 24px;
  font-weight: 400;
}
body.woocommerce-order-received .wc-block-order-confirmation-totals__table :is(tbody, tfoot) td:last-child {
  text-align: right;
}
body.woocommerce-order-received .wc-block-order-confirmation-totals__table tfoot tr:last-child :is(th, td, .amount, bdi) {
  font-weight: 700 !important;
}
@media (max-width: 599px) {
  body.woocommerce-order-received .wc-block-order-confirmation-totals__table thead th:last-child { width: 110px; }
  body.woocommerce-order-received .wc-block-order-confirmation-totals__table tfoot th { padding-right: 18px; }
}

/* 1.2.10: Cart signing details. Keep Signing option/value on one row,
   then a blank line before the remaining stacked label/value pairs. */
body.woocommerce-cart .woocommerce table.cart td.product-name dl.variation {
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr);
  column-gap: .35em;
  row-gap: 0;
  margin: 18px 0 0;
  text-align: left;
}
body.woocommerce-cart .woocommerce table.cart td.product-name dl.variation::before,
body.woocommerce-cart .woocommerce table.cart td.product-name dl.variation::after {
  content: none;
  display: none;
}
body.woocommerce-cart .woocommerce table.cart td.product-name dl.variation > :is(dt, dd) {
  display: block;
  grid-column: 1 / -1;
  float: none !important;
  clear: none;
  width: auto;
  min-width: 0;
  margin: 0;
  padding: 0;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
body.woocommerce-cart .woocommerce table.cart td.product-name dl.variation > dt:first-of-type {
  grid-column: 1;
  grid-row: 1;
}
body.woocommerce-cart .woocommerce table.cart td.product-name dl.variation > dd:first-of-type {
  grid-column: 2;
  grid-row: 1;
  margin-bottom: 1em;
}
body.woocommerce-cart .woocommerce table.cart td.product-name dl.variation > dd:not(:first-of-type) {
  margin-bottom: .35em;
}
body.woocommerce-cart .woocommerce table.cart td.product-name dl.variation > dd:last-of-type { margin-bottom: 0; }
body.woocommerce-cart .woocommerce table.cart td.product-name dl.variation dd > p { margin: 0; }

/* Bold the Cart product name */
body.woocommerce-cart td.product-name > a {
  font-weight: 700 !important;
}

/* Bold these signing-detail labels */
body.woocommerce-cart dl.variation > dt.variation-Signingoption,
body.woocommerce-cart dl.variation > dt.variation-Recipient,
body.woocommerce-cart dl.variation > dt.variation-Inscription,
body.woocommerce-cart dl.variation > dt.variation-Healthcareprofessional,
body.woocommerce-cart dl.variation > dt.variation-Professionorspecialty {
  font-weight: 700 !important;
}

/* Keep the Quantity heading and cell left-aligned */
body.woocommerce-cart .woocommerce table.cart th.product-quantity,
body.woocommerce-cart .woocommerce table.cart td.product-quantity {
  text-align: left !important;
}

/* Center the number beneath the Quantity heading */
body.woocommerce-cart .ll-cart-quantity {
  display: inline-block;
  width: 80px;
  text-align: center;
}

/* Center the amount beneath the Subtotal heading */
body.woocommerce-cart .woocommerce table.cart td.product-subtotal {
  text-align: left !important;
}

body.woocommerce-cart table.cart td.product-subtotal > .amount {
  display: inline-block;
  width: 80px;
  text-align: center;
}

/* Bold the Checkout product name */
body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name {
  font-weight: 700 !important;
}

/* Keep signing-detail values regular */
body.woocommerce-checkout td.product-name dl.variation {
  font-weight: 400 !important;
}

/* Bold the signing-detail labels */
body.woocommerce-checkout td.product-name dl.variation > dt {
  font-weight: 700 !important;
}

/* Checkout signing details: remove indents and stack values */
body.woocommerce-checkout td.product-name dl.variation {
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr);
  column-gap: .35em;
  row-gap: 0;
  text-align: left;
}

body.woocommerce-checkout td.product-name dl.variation::before,
body.woocommerce-checkout td.product-name dl.variation::after {
  display: none;
}

body.woocommerce-checkout td.product-name dl.variation > dt,
body.woocommerce-checkout td.product-name dl.variation > dd {
  grid-column: 1 / -1;
  float: none !important;
  min-width: 0;
  margin: 0 !important;
  padding: 0;
}

body.woocommerce-checkout td.product-name dl.variation > dt:first-of-type {
  grid-column: 1 / -1;
  grid-row: auto;
}

body.woocommerce-checkout td.product-name dl.variation > dd:first-of-type {
  grid-column: 1 / -1;
  grid-row: auto;
  margin-bottom: 1em !important;
}

body.woocommerce-checkout td.product-name dl.variation dd > p {
  margin: 0 !important;
}

/* Give Return to shop more space below the empty-cart message */
body.woocommerce-cart .woocommerce .return-to-shop {
  margin-top: 80px !important;
}
/* Desktop review batch 1.2.11. Keep approved commerce rules above intact. */
/* Change center to flex-start to return the Featured label to the left. */
.ll-featured-intro > .ll-eyebrow-page-title {
  justify-content: center;
  text-align: center;
}
.ll-about-nursing-section .ll-photo-copy { align-self: start; }
.ll-pottery-thumb > a { display: block; }
@media (min-width: 782px) {
  .ll-about-pottery-section .ll-section-photo img {
    max-height: var(--ll-pottery-photo-height, 452px) !important;
  }
}
@media (max-width: 781px) {
  .ll-desktop-line-break { display: none; }
}
/* The note explains the marker without making color carry its meaning. */
.ll-required-marker,
.woocommerce form .required { color: #b42318 !important; }
.ll-page-section p.ll-required-fields-note,
.woocommerce p.ll-required-fields-note {
  font-family: var(--wp--preset--font-family--sans);
  font-size: .85rem !important;
  line-height: 1.4;
  color: #47617b;
  margin: 0 0 22px;
}
.ll-required-fields-note[hidden] { display: none !important; }

/* Book introduction: desktop vertical adjustment */
@media (min-width: 782px) {
  .ll-book-intro .ll-book-intro-copy {
    position: relative;
    top: -20px;
  }
}

/* Center the About Robin page label */
.ll-about-intro-section > .ll-eyebrow-page-title {
  justify-content: center;
  text-align: center;
}
/* October 28 desktop revision — new About and Featured elements. */
.ll-keep-together { white-space: nowrap; }
.ll-page-section.ll-about-nursing-section p.ll-nursing-photo-credit {
  color: #47617b;
  font-size: .85rem !important;
  line-height: 1.5;
  font-style: italic;
  text-align: left;
  margin: 0 !important;
}
.ll-featured-media-card > .ll-recognition-badge-row {
  display: grid;
  grid-template-columns: 180px minmax(0, 1fr);
  gap: 20px;
  align-items: start;
  margin: 28px 0 24px !important;
}
.ll-recognition-badge-row > .ll-recognition-badge {
  width: 180px !important;
  margin: 0 !important;
}
.ll-recognition-badge img { display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; }
.ll-recognition-badge-row > .ll-recognition-copy { min-width: 0; margin: 0 !important; }
.ll-recognition-copy > h4 { margin: 0 0 16px !important; font-size: 1.2rem; color: #062958; }
.ll-recognition-copy > :last-child { margin-bottom: 0 !important; }
@media (min-width: 782px) {
  .ll-about-nursing-section .ll-section-photo { grid-column: 1; grid-row: 1; }
  .ll-about-nursing-section .ll-photo-copy { grid-column: 2; grid-row: 1; padding-bottom: 64px; }
  .ll-about-nursing-section .ll-nursing-photo-credit { grid-column: 2; grid-row: 1; align-self: end; padding-bottom: 24px; }
}
@media (max-width: 1100px) {
  .ll-featured-media-card > .ll-recognition-badge-row { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 781px) {
  .ll-about-nursing-section .ll-nursing-photo-credit { order: 3; padding-bottom: 24px; }
}
@media (max-width: 599px) {
  .ll-recognition-badge-row > .ll-recognition-badge { width: 144px !important; }
}

/* Shared soft image shadow, scoped to the approved photos and artwork. */
.ll-robin .ll-portrait img,
.ll-about-intro-section .ll-section-photo img,
.ll-about-nursing-section .ll-section-photo img,
.ll-about-pottery-section .ll-section-photo img,
.ll-pottery-thumb img,
.ll-cover-open img,
.ll-save-one-life img,
.ll-recognition-badge img { filter: drop-shadow(10px 16px 15px #06295826); }

/* Approved desktop book-intro adjustments, retained from Global Additional CSS. */
@media (min-width: 1001px) {
  .ll-book-intro .ll-book-intro-grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  }
  .ll-book-intro-copy > h1 {
    position: relative;
    top: -10px;
  }
}

/* 404 and policy review pages share the established interior frame. */
.ll-content.ll-service-page { padding-top: 0 !important; padding-bottom: 0 !important; }
.ll-service-page .ll-page-section { margin-block: 0 !important; }
.ll-not-found { text-align: center; min-height: 420px; }
.ll-not-found > .ll-eyebrow-page-title,
.ll-policy-page > .ll-policy-title { justify-content: center; text-align: center; }
.ll-not-found > h1 { font-size: clamp(1.8rem, 3.2vw, 2.65rem); margin: 24px 0 !important; }
.ll-not-found .wp-block-buttons { justify-content: center; gap: 16px; margin: 32px 0 !important; }
.ll-not-found-contact a,
.ll-policy-body a { text-decoration: underline; text-underline-offset: 3px; }
.ll-policy-page > .ll-policy-intro { text-align: center; color: #47617b; margin-bottom: 32px !important; }
.ll-policy-page > .ll-policy-body { max-width: 900px !important; margin-inline: auto !important; padding: clamp(20px, 4vw, 48px); border: 1px solid #d5dce5; border-radius: 16px; background: #fff; box-sizing: border-box; overflow-wrap: anywhere; }
.ll-policy-body > h2 { font-size: 1.4rem; line-height: 1.3; margin-top: 32px; margin-bottom: 14px; }
.ll-policy-body > p { line-height: 1.7; }
.ll-policy-body > .ll-policy-review-notice { margin-top: 0; padding: 18px; border-radius: 8px; background: #eaf5fc; font-family: var(--wp--preset--font-family--sans); }
.ll-policy-body > .ll-policy-question { padding: 16px 18px; border-left: 3px solid #ffb900; background: #faf9f6; }
.ll-footer-policies { display: flex; flex-wrap: wrap; gap: 12px 24px; justify-content: center; padding: 16px 20px 0; }
.ll-footer-policies a { color: inherit; font-size: .8rem; text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 599px) {
  .ll-policy-page > .ll-policy-title,
  .ll-not-found > .ll-eyebrow-page-title { font-size: .95rem !important; letter-spacing: .1em; gap: 10px; }
  .ll-policy-page > .ll-policy-title::before,
  .ll-policy-page > .ll-policy-title::after { width: 20px; }
  .ll-policy-body > h2 { font-size: 1.2rem; }
}

/* Policy/404 header clearance confirmed on staging; shared service-page boundary. */
body:has(main.ll-service-page) .wp-site-blocks .ll-header { margin-bottom: 25px !important; }
main.ll-content.ll-service-page { padding-top: 0 !important; }
.ll-service-page > .ll-page-section::before { border-top: 3px solid #f5f3ed; box-sizing: border-box; }

/* Responsive QA: preserve the accepted section/divider geometry while letting
   the visible header controls receive pointer/touch input above interior main. */
@media (max-width: 1120px) {
  .wp-site-blocks > header:has(.ll-header) {
    position: relative;
    z-index: 5;
  }
}
.ll-lifelong-phrase { display: inline-block; white-space: nowrap; }
.ll-book-title-phrase { white-space: nowrap; }
.ll-book-intro .ll-book-intro-grid > * { min-width: 0; max-width: 100%; }
@media (max-width: 380px) {
  .ll-robin .ll-section-title { font-size: clamp(1.4rem, 7.5vw, 1.95rem); }
  .ll-book-intro .ll-book-intro-copy { width: 100%; }
  .ll-book-title-phrase { white-space: normal; }
  .ll-book-intro .ll-book-intro-copy > h1 { font-size: clamp(1.6rem, 8.5vw, 2rem); }
}
