/* dig-product.css */
/* DIG private product system — PRODUCT-STYLE-01, 2026-10-09.
   Scope is opt-in: no homepage, global WordPress theme or checkout override.
   Reuse with verified product data and original licensed product media only. */
.dig-product-page {
  --dig-blue: #006699;
  --dig-heading: #102b49;
  --dig-ink: #171717;
  --dig-muted: #535d6a;
  --dig-line: #dce5eb;
  --dig-soft: #f5f8fa;
  --dig-radius: 12px;
  /* TYPE-01: shared interior hierarchy; edit these roles for every page. */
  --dig-title-page: clamp(1.65rem, 2.6vw, 2.125rem);
  --dig-title-section: clamp(1.3rem, 2vw, 1.65rem);
  --dig-title-panel: clamp(1.15rem, 1.7vw, 1.25rem);
  --dig-title-card: 1.125rem;
  --dig-title-detail: 1rem;
  margin: 0;
  color: var(--dig-ink);
  background: #fff;
  font: 16px/1.65 Montserrat, Arial, sans-serif;
}
.dig-product-page *, .dig-product-page *::before, .dig-product-page *::after { box-sizing: border-box; }
.dig-product-page .wrap { width: min(100%, 1380px); margin-inline: auto; padding-inline: clamp(20px, 4vw, 54px); }
.dig-product-page a { color: var(--dig-blue); text-underline-offset: .22em; }
.dig-product-page :is(a, summary, button):focus-visible { outline: 3px solid var(--dig-blue); outline-offset: 5px; }
.dig-product-page [id] { scroll-margin-top: 24px; }
.dig-product-page .skip-link { position: absolute; top: 8px; left: 20px; transform: translateY(-200%); padding: 12px 18px; background: #fff; z-index: 5; }
.dig-product-page .skip-link:focus { transform: none; }
.dig-product-page .site-head { display: flex; align-items: center; justify-content: space-between; gap: 32px; min-height: 112px; }
.dig-product-page .brand { display: block; flex-shrink: 0; }
.dig-product-page .brand img { display: block; width: 225px; height: 75px; object-fit: contain; }
.dig-product-page .site-nav { display: flex; align-items: center; flex-wrap: wrap; gap: 16px 30px; }
.dig-product-page .site-nav a { padding: 12px 0; color: var(--dig-heading); text-decoration: none; border-bottom: 2px solid transparent; font-size: .88rem; }
.dig-product-page .site-nav .selected { font-weight: 700; border-color: var(--dig-blue); }
.dig-product-page .site-nav a:hover { color: var(--dig-blue); border-color: var(--dig-blue); }
.dig-product-page .preview-flag { margin: 0 auto 22px; color: var(--dig-muted); font-size: .7rem; letter-spacing: .06em; text-align: right; text-transform: uppercase; }
.dig-product-page .crumb { display: flex; gap: 9px; flex-wrap: wrap; margin-bottom: 34px; font-size: .78rem; color: var(--dig-muted); }
.dig-product-page .product-layout { display: grid; grid-template-columns: minmax(0, 1.04fr) minmax(0, 1fr); gap: clamp(28px, 4vw, 62px); padding-bottom: 64px; align-items: start; }
.dig-product-page .product-media { margin: 0; min-width: 0; }
.dig-product-page .media-box { display: flex; justify-content: center; align-items: center; min-height: 380px; padding: 26px; background: #fff; border: 1px solid var(--dig-line); border-radius: var(--dig-radius); overflow: hidden; }
.dig-product-page .media-box img { display: block; width: 100%; height: auto; max-height: 390px; object-fit: contain; }
.dig-product-page .additional-view { margin-top: 16px; border-bottom: 1px solid var(--dig-line); }
.dig-product-page summary { cursor: pointer; min-height: 48px; padding: 12px 0; color: var(--dig-blue); font-weight: 600; }
.dig-product-page .additional-view .media-box { min-height: 160px; margin-bottom: 16px; }
.dig-product-page figcaption { color: var(--dig-muted); font-size: .76rem; padding-top: 18px; }
.dig-product-page figcaption strong { display: block; color: var(--dig-heading); margin-bottom: 4px; }
.dig-product-page .media-credit { margin-top: 12px; overflow-wrap: anywhere; }
.dig-product-page .media-credit summary { font-weight: 500; font-size: .76rem; }
.dig-product-page .media-credit p { margin: 8px 0; }
.dig-product-page h1, .dig-product-page h2, .dig-product-page h3 { text-wrap: balance; }
.dig-product-page h1 { color: var(--dig-heading); font-size: var(--dig-title-page); line-height: 1.2; letter-spacing: -.035em; margin: 12px 0 18px; font-weight: 700; }
.dig-product-page h2 { color: var(--dig-blue); font-size: var(--dig-title-section); line-height: 1.25; letter-spacing: -.025em; margin: 0 0 24px; }
.dig-product-page h3 { color: var(--dig-heading); font-size: var(--dig-title-detail); line-height: 1.4; margin: 0 0 10px; }
.dig-product-page p { margin: 0 0 16px; }
.dig-product-page .eyebrow { color: var(--dig-blue); font-size: .72rem; letter-spacing: .09em; text-transform: uppercase; font-weight: 700; }
.dig-product-page .intro { color: var(--dig-muted); font-size: .95rem; }
.dig-product-page .keyfacts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 24px 0; }
.dig-product-page .fact { margin: 0; background: var(--dig-soft); padding: 16px; border-radius: 8px; }
.dig-product-page .fact dt { color: var(--dig-muted); font-size: .72rem; margin-bottom: 4px; }
.dig-product-page .fact dd { margin: 0; font-size: .9rem; font-weight: 600; color: var(--dig-heading); }
.dig-product-page .commercial { border: 1px solid var(--dig-line); border-top: 3px solid var(--dig-blue); padding: 24px; border-radius: var(--dig-radius); }
.dig-product-page .commercial h2 { font-size: var(--dig-title-panel); margin-bottom: 10px; }
.dig-product-page .commercial p { font-size: .82rem; color: var(--dig-muted); }
.dig-product-page .historical-offer { margin: 8px 0 20px; }
.dig-product-page .historical-offer summary { font-size: .78rem; }
.dig-product-page .historical-offer p { font-size: .76rem; }
.dig-product-page .purchase-disabled { width: 100%; min-height: 48px; border: 1px solid #bdc9d0; border-radius: 6px; background: #e9eef1; color: #495966; font: inherit; font-size: .85rem; font-weight: 600; cursor: not-allowed; }
.dig-product-page .section-links { display: flex; flex-wrap: wrap; gap: 10px 22px; margin: 18px 0 0; }
.dig-product-page .section-links a { display: inline-flex; align-items: center; min-height: 44px; font-size: .76rem; }
.dig-product-page .section { padding-block: 52px; border-top: 1px solid var(--dig-line); }
.dig-product-page .section-soft { background: var(--dig-soft); }
.dig-product-page .columns { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.dig-product-page .columns.two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.dig-product-page .card { background: #fff; border-top: 2px solid var(--dig-blue); border-radius: 9px; padding: 26px; }
.dig-product-page .card p { color: var(--dig-muted); font-size: .86rem; margin: 0; }
.dig-product-page .service-block { background: #fcf9f3; border-top: 0; }
.dig-product-page .service-layout { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.3fr); gap: 48px; align-items: start; }
.dig-product-page .service-layout h2 { color: var(--dig-heading); }
.dig-product-page .service-layout p { color: var(--dig-muted); font-size: .9rem; }
.dig-product-page .service-layout .fine { font-size: .77rem; }
.dig-product-page .footer { padding-block: 30px; background: var(--dig-blue); color: #fff; }
.dig-product-page .footer .wrap { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 20px 40px; }
.dig-product-page .footer p { font-size: .76rem; margin: 0; }
.dig-product-page .footer small { display: block; margin-top: 8px; font-size: .68rem; max-width: 750px; }
.dig-product-page .footer a { color: #fff; display: inline-flex; align-items: center; min-height: 44px; font-size: .78rem; }
/* Same visual system in the existing private WordPress-pattern preview. */
.dig-product-template { background: #fff; }
.dig-product-template .wp-block-columns.product-layout { display: grid; margin: 24px 0 0; }
.dig-product-template .product-layout > .wp-block-column { min-width: 0; padding: 0; margin: 0; background: none; border: 0; }
.dig-product-template .dig-media-placeholder { min-height: 390px; padding: 28px; background: var(--dig-soft); border: 1px dashed #96aebd; border-radius: var(--dig-radius); text-align: center; }
.dig-product-template .dig-product-caption { font-size: .76rem; color: var(--dig-muted); }
.dig-product-template .dig-offer-summary, .dig-product-template .dig-specifications { margin: 24px 0; overflow-wrap: anywhere; }
.dig-product-template .dig-offer-summary > div, .dig-product-template .dig-specifications > div { padding: 14px 0; border-bottom: 1px solid var(--dig-line); }
.dig-product-template dt { font-size: .78rem; color: var(--dig-muted); margin-bottom: 4px; }
.dig-product-template dd { margin: 0; font-size: .9rem; font-weight: 600; color: var(--dig-heading); }
.dig-product-template dd small { display: block; font-size: .75rem; font-weight: 400; margin-top: 4px; }
.dig-product-template .dig-product-detail { border-bottom: 1px solid var(--dig-line); padding: 10px 0; }
.dig-product-template .dig-product-service { background: #fcf9f3; padding: 32px; margin: 36px 0; border-radius: var(--dig-radius); }
.dig-product-template .dig-detail-link a { display: inline-block; min-height: 44px; padding: 10px 0; font-size: .78rem; }
.dig-store-shell.dig-product-template p { text-align: left; hyphens: manual; }
.dig-store-shell.dig-product-template .dig-media-placeholder { text-align: center; }
@media (max-width: 950px) {
  .dig-product-page .site-head { flex-wrap: wrap; gap: 6px 24px; padding-top: 16px; padding-bottom: 12px; }
  .dig-product-page .product-layout { gap: 28px; }
  .dig-product-page .media-box { min-height: 300px; padding: 18px; }
  .dig-product-page .columns { grid-template-columns: 1fr; }
  .dig-product-page .service-layout { gap: 28px; }
}
@media (max-width: 720px) {
  .dig-product-page .site-head { align-items: flex-start; }
  .dig-product-page .site-nav { width: 100%; gap: 8px 22px; }
  .dig-product-page .site-nav a { font-size: .78rem; }
  .dig-product-page .preview-flag { text-align: left; font-size: .63rem; margin-bottom: 20px; }
  .dig-product-page .crumb { margin-bottom: 24px; }
  .dig-product-page .product-layout { grid-template-columns: 1fr; padding-bottom: 40px; }
  .dig-product-page .media-box { min-height: 230px; }
  .dig-product-page .media-box img { max-height: 310px; }
  .dig-product-page .service-layout, .dig-product-page .columns.two { grid-template-columns: 1fr; }
  .dig-product-page .section { padding-block: 36px; }
  .dig-product-page .service-layout { gap: 12px; }
  .dig-product-page .commercial { padding: 20px; }
  .dig-product-template .dig-media-placeholder { min-height: 250px; }
  .dig-product-template .dig-product-service { padding: 24px; }
}
@media (max-width: 360px) {
  .dig-product-page .keyfacts { grid-template-columns: 1fr; }
  .dig-product-page .site-nav { gap: 4px 16px; }
}

/* dig-shop-journey.css */
/* JOURNEY-01 — private review screens only. Shared identity: dig-product.css.
   No live commerce, tracking, scripts or changes to approved homepage/product. */
.dig-journey { --journey-warm: #fcf9f3; }
.dig-journey .site-head { min-height: 110px; }
.dig-journey .page-intro { padding-block: 12px 36px; max-width: 900px; }
.dig-journey .page-intro h1 { margin-top: 8px; }
.dig-journey .page-intro p { max-width: 720px; color: var(--dig-muted); }
.dig-journey .eyebrow { margin-bottom: 10px; }
.dig-journey .review-bar { background: var(--dig-soft); border-block: 1px solid var(--dig-line); margin-bottom: 30px; }
.dig-journey .review-bar .wrap { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 24px; padding-block: 9px; }
.dig-journey .review-bar p { font-size: .72rem; margin: 0; color: var(--dig-muted); }
.dig-journey .review-bar a { font-size: .74rem; padding: 8px 0; min-height: 40px; }
.dig-journey .crumb { margin-bottom: 12px; }
.dig-journey .page-content { padding-bottom: 68px; }
.dig-journey .section-label { font-size: .75rem; color: var(--dig-blue); letter-spacing: .07em; text-transform: uppercase; margin-bottom: 12px; font-weight: 600; }
.dig-journey .subtle { color: var(--dig-muted); font-size: .8rem; }
.dig-journey .small-note { color: var(--dig-muted); font-size: .74rem; margin: 12px 0 0; }
.dig-journey .pill { display: inline-block; padding: 5px 10px; background: #e9f2f7; color: #285470; border-radius: 5px; font-size: .67rem; font-weight: 500; }
.dig-journey .button { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 48px; border: 1px solid var(--dig-blue); border-radius: 6px; padding: 12px 20px; color: var(--dig-blue); background: #fff; text-decoration: none; font: inherit; font-size: .84rem; font-weight: 600; }
.dig-journey .button:hover { background: var(--dig-soft); }
.dig-journey .button.primary { background: var(--dig-blue); color: #fff; }
.dig-journey .button.primary:hover { background: #00567f; }
.dig-journey .button-row { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }
.dig-journey .category-grid, .dig-journey .review-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.dig-journey .category-card { display: grid; grid-template-columns: 66px minmax(0, 1fr); gap: 20px; padding: 30px; background: var(--dig-soft); border-top: 3px solid var(--dig-blue); border-radius: var(--dig-radius); text-decoration: none; color: var(--dig-ink); }
.dig-journey .category-card:hover { background: #eaf2f7; }
.dig-journey .category-card h2 { font-size: var(--dig-title-panel); margin-bottom: 10px; }
.dig-journey .category-card p { color: var(--dig-muted); font-size: .88rem; }
.dig-journey .icon { width: 54px; height: 54px; color: var(--dig-blue); flex-shrink: 0; }
.dig-journey .warm-note { margin-top: 44px; padding: 32px; background: var(--journey-warm); border-radius: var(--dig-radius); }
.dig-journey .warm-note h2 { color: var(--dig-heading); font-size: var(--dig-title-section); }
.dig-journey .warm-note p:last-child { margin-bottom: 0; }
.dig-journey .catalog-layout { display: grid; grid-template-columns: 230px minmax(0, 1fr); gap: 38px; }
.dig-journey .sidebar { min-width: 0; }
.dig-journey .sidebar nav { display: flex; flex-direction: column; margin-bottom: 26px; }
.dig-journey .sidebar nav a { border-bottom: 1px solid var(--dig-line); padding: 13px 0; font-size: .86rem; text-decoration: none; }
.dig-journey .filter-block { background: var(--dig-soft); padding: 18px; border-radius: 8px; }
.dig-journey .filter-block legend { font-size: .85rem; font-weight: 600; color: var(--dig-heading); }
.dig-journey .filter-block label { display: flex; gap: 9px; align-items: center; min-height: 40px; font-size: .77rem; }
.dig-journey fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
.dig-journey input, .dig-journey select { font: inherit; font-size: .84rem; max-width: 100%; accent-color: var(--dig-blue); }
.dig-journey input:disabled, .dig-journey select:disabled { opacity: 1; color: #596674; -webkit-text-fill-color: #596674; }
.dig-journey .catalog-view { padding-block: 10px 46px; border-bottom: 1px solid var(--dig-line); margin-bottom: 36px; }
.dig-journey .catalog-heading { display: flex; justify-content: space-between; align-items: flex-start; flex-wrap: wrap; gap: 12px; margin-bottom: 22px; }
.dig-journey .catalog-heading h2 { margin-bottom: 8px; }
.dig-journey .catalog-heading select { padding: 10px; border: 1px solid var(--dig-line); background: #fff; border-radius: 5px; }
.dig-journey .product-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.dig-journey .product-card { border: 1px solid var(--dig-line); border-radius: var(--dig-radius); padding: 22px; }
.dig-journey .product-card .product-photo { display: flex; align-items: center; justify-content: center; height: 220px; padding: 12px; margin-bottom: 18px; }
.dig-journey .product-card img { width: 100%; height: 100%; object-fit: contain; }
.dig-journey .product-card h3 { font-size: var(--dig-title-card); }
.dig-journey .product-card h3 a { color: var(--dig-heading); text-decoration: none; }
.dig-journey .product-card .button { width: 100%; margin-top: 12px; }
.dig-journey .empty-panel { display: flex; align-items: flex-start; gap: 22px; background: var(--dig-soft); border-radius: var(--dig-radius); padding: 30px; }
.dig-journey .empty-panel h3 { font-size: var(--dig-title-card); }
.dig-journey .empty-panel p { color: var(--dig-muted); font-size: .86rem; max-width: 540px; }
.dig-journey .commerce-layout { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(290px, 1fr); gap: 36px; align-items: start; }
.dig-journey .surface { border: 1px solid var(--dig-line); border-radius: var(--dig-radius); padding: 28px; background: #fff; }
.dig-journey .surface + .surface { margin-top: 22px; }
.dig-journey .surface h2 { font-size: var(--dig-title-panel); }
.dig-journey .order-summary { background: var(--dig-soft); border-top: 3px solid var(--dig-blue); border-radius: var(--dig-radius); padding: 28px; }
.dig-journey .order-summary h2 { font-size: var(--dig-title-panel); }
.dig-journey .totals { margin: 20px 0; }
.dig-journey .totals > div { display: flex; justify-content: space-between; gap: 16px; padding: 12px 0; border-bottom: 1px solid var(--dig-line); }
.dig-journey .totals dt, .dig-journey .totals dd { margin: 0; font-size: .83rem; }
.dig-journey .totals dd { text-align: right; font-weight: 500; color: var(--dig-heading); }
.dig-journey .totals .total { border-bottom: 0; padding-block: 20px; }
.dig-journey .totals .total dt, .dig-journey .totals .total dd { font-weight: 700; font-size: 1rem; }
.dig-journey .cart-item { display: grid; grid-template-columns: 160px minmax(0, 1fr); gap: 28px; align-items: center; }
.dig-journey .cart-item img { width: 100%; height: 150px; object-fit: contain; }
.dig-journey .cart-item h2 { margin-bottom: 8px; font-size: var(--dig-title-panel); }
.dig-journey .cart-item .quantity { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; font-size: .8rem; }
.dig-journey .quantity input { width: 64px; padding: 8px; border: 1px solid var(--dig-line); border-radius: 5px; background: #f5f8fa; }
.dig-journey .text-disabled { border: 0; padding: 10px 0; background: none; color: #697784; text-decoration: underline; font: inherit; font-size: .74rem; cursor: not-allowed; }
.dig-journey .steps { display: flex; flex-wrap: wrap; list-style: none; gap: 12px 24px; padding: 0; margin: 0 0 30px; color: var(--dig-muted); font-size: .78rem; }
.dig-journey .steps li { display: flex; gap: 8px; align-items: center; }
.dig-journey .step-number { display: inline-grid; place-items: center; width: 26px; height: 26px; border: 1px solid var(--dig-line); border-radius: 50%; font-size: .7rem; }
.dig-journey .steps [aria-current=step] { color: var(--dig-blue); font-weight: 700; }
.dig-journey .steps [aria-current=step] .step-number { background: var(--dig-blue); color: #fff; border-color: var(--dig-blue); }
.dig-journey .form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.dig-journey .form-grid .full { grid-column: 1 / -1; }
.dig-journey .field label { display: block; font-size: .8rem; color: var(--dig-heading); margin-bottom: 6px; }
.dig-journey .field input { width: 100%; min-height: 46px; background: #f7f9fa; border: 1px solid #c9d4dc; border-radius: 5px; padding: 11px 12px; }
.dig-journey .choice { display: grid; grid-template-columns: 20px minmax(0, 1fr); gap: 12px; border: 1px solid var(--dig-line); border-radius: 7px; padding: 18px; margin-bottom: 12px; }
.dig-journey .choice input { margin: 5px 0 0; }
.dig-journey .choice strong { display: block; font-size: .9rem; color: var(--dig-heading); }
.dig-journey .choice small { display: block; margin-top: 4px; font-size: .77rem; color: var(--dig-muted); }
.dig-journey .payment-placeholder { padding: 22px; background: var(--dig-soft); border: 1px dashed #9cb2c0; border-radius: 8px; color: var(--dig-muted); font-size: .85rem; }
.dig-journey .consent-demo { display: flex; align-items: flex-start; gap: 10px; margin: 22px 0; font-size: .77rem; color: var(--dig-muted); }
.dig-journey .consent-demo input { margin-top: 5px; }
.dig-journey .compact-item { display: flex; align-items: center; gap: 14px; padding-bottom: 18px; border-bottom: 1px solid var(--dig-line); }
.dig-journey .compact-item img { width: 92px; height: 72px; object-fit: contain; background: #fff; border-radius: 6px; }
.dig-journey .compact-item strong { font-size: .8rem; color: var(--dig-heading); }
.dig-journey .compact-item p { margin: 4px 0 0; font-size: .74rem; }
.dig-journey .review-next { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; padding-top: 32px; margin-top: 42px; border-top: 1px solid var(--dig-line); }
.dig-journey .review-next p { font-size: .78rem; color: var(--dig-muted); margin: 0; }
.dig-journey .details-note { border-bottom: 1px solid var(--dig-line); padding-block: 10px; margin-top: 20px; }
.dig-journey .details-note summary { font-size: .85rem; }
.dig-journey .details-note p { font-size: .84rem; color: var(--dig-muted); }
.dig-journey .confirmation-banner { display: flex; align-items: center; gap: 26px; padding: 32px; background: var(--dig-soft); border-radius: var(--dig-radius); margin-bottom: 32px; }
.dig-journey .confirmation-mark { display: grid; place-items: center; flex-shrink: 0; width: 68px; height: 68px; border: 2px solid var(--dig-blue); border-radius: 50%; color: var(--dig-blue); font-size: 2rem; }
.dig-journey .confirmation-banner h2 { margin: 0 0 8px; font-size: var(--dig-title-section); }
.dig-journey .confirmation-banner p { margin: 0; font-size: .87rem; color: var(--dig-muted); }
.dig-journey .info-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.dig-journey .info-card { padding: 28px; border-top: 2px solid var(--dig-blue); background: var(--dig-soft); border-radius: var(--dig-radius); }
.dig-journey .info-card h2 { font-size: var(--dig-title-panel); }
.dig-journey .info-card p { color: var(--dig-muted); font-size: .88rem; }
.dig-journey .info-card ul { padding-left: 20px; font-size: .84rem; color: var(--dig-muted); }
.dig-journey .info-card li { margin-block: 8px; }
.dig-journey .editorial-block { margin-top: 44px; max-width: 900px; }
.dig-journey .editorial-block h2 { font-size: var(--dig-title-section); }
.dig-journey .editorial-block p { color: var(--dig-muted); }
.dig-journey .legal-layout { display: grid; grid-template-columns: 230px minmax(0, 1fr); gap: 48px; }
.dig-journey .legal-layout .sidebar nav a { font-size: .79rem; }
.dig-journey .legal-section { padding: 6px 0 30px; margin-bottom: 28px; border-bottom: 1px solid var(--dig-line); }
.dig-journey .legal-section h2 { font-size: var(--dig-title-panel); margin-bottom: 15px; }
.dig-journey .legal-section p { color: var(--dig-muted); font-size: .88rem; }
.dig-journey .pending-copy { background: var(--dig-soft); border-left: 3px solid #a0b9c9; border-radius: 0 6px 6px 0; padding: 15px 18px; }
.dig-journey .review-card { border: 1px solid var(--dig-line); border-top: 3px solid var(--dig-blue); border-radius: var(--dig-radius); padding: 28px; }
.dig-journey .review-card h2 { font-size: var(--dig-title-panel); margin: 14px 0 12px; }
.dig-journey .review-card p { font-size: .86rem; color: var(--dig-muted); }
.dig-journey .review-card .button { margin-top: 6px; }
.dig-journey .review-grid { margin-top: 32px; }
.dig-journey .approved-reference { display: block; width: 100%; max-width: 1040px; height: auto; margin: 24px auto; }
.dig-journey .footer .footer-links { display: flex; flex-wrap: wrap; gap: 0 24px; }
.dig-journey .footer .footer-links a { font-size: .73rem; }
.dig-journey .footer .media-credit { width: 100%; font-size: .64rem; margin: 0; }
@media (max-width: 1020px) {
  .dig-journey .commerce-layout { grid-template-columns: minmax(0, 1.35fr) minmax(270px, 1fr); gap: 24px; }
  .dig-journey .catalog-layout, .dig-journey .legal-layout { grid-template-columns: 190px minmax(0, 1fr); gap: 26px; }
  .dig-journey .cart-item { grid-template-columns: 110px minmax(0, 1fr); gap: 16px; }
  .dig-journey .surface, .dig-journey .order-summary { padding: 22px; }
}
@media (max-width: 760px) {
  .dig-journey .category-grid, .dig-journey .review-grid, .dig-journey .commerce-layout, .dig-journey .catalog-layout, .dig-journey .legal-layout { grid-template-columns: 1fr; }
  .dig-journey .category-card { padding: 24px; }
  .dig-journey .info-grid { grid-template-columns: 1fr; }
  .dig-journey .sidebar nav { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 18px; }
  .dig-journey .filter-block { margin-bottom: 16px; }
  .dig-journey .page-intro { padding-bottom: 24px; }
  .dig-journey .review-bar .wrap { justify-content: flex-start; }
  .dig-journey .page-content { padding-bottom: 44px; }
  .dig-journey .warm-note { padding: 24px; margin-top: 30px; }
  .dig-journey .confirmation-banner { align-items: flex-start; padding: 24px; gap: 18px; }
  .dig-journey .confirmation-mark { width: 48px; height: 48px; font-size: 1.4rem; }
}
@media (max-width: 480px) {
  .dig-journey .product-cards, .dig-journey .form-grid { grid-template-columns: 1fr; }
  .dig-journey .category-card { grid-template-columns: 42px minmax(0, 1fr); gap: 16px; }
  .dig-journey .category-card .icon { width: 38px; height: 38px; }
  .dig-journey .cart-item { grid-template-columns: 1fr; }
  .dig-journey .cart-item img { width: 180px; height: 110px; }
  .dig-journey .confirmation-banner { flex-direction: column; }
  .dig-journey .totals > div { gap: 12px; }
  .dig-journey .empty-panel { flex-direction: column; }
}

/* dig-home.css */
/* HOME-03 — balanced hero columns, separated categories and a smaller category heading.
   Opt-in only: no changes to other pages, the approved media, WordPress or commerce.
   Media playback uses native HTML controls; no script or transcode. */
.dig-home .wrap { padding-inline: clamp(20px, 3.3vw, 46px); }
.dig-home .preview-flag { font-size: .58rem; margin-bottom: 22px; letter-spacing: 0; }
/* HOME-REFINE-02: captions get their own row; media align with the main title below. */
.dig-home .home-photo-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-areas: "eyebrow ." "copy media"; column-gap: clamp(40px, 5vw, 80px); row-gap: 18px; align-items: start; }
.dig-home .home-photo-layout > .home-block-eyebrow { grid-area: eyebrow; margin: 0; color: var(--dig-blue); font-size: .73rem; line-height: 1.65; }
.dig-home .home-photo-layout > .home-copy { grid-area: copy; }
/* Small optical inset follows the cap height of the heading, not the caption row. */
.dig-home .home-photo-layout > .home-photo, .dig-home .home-photo-layout > .home-video { grid-area: media; margin-top: 6px; }
.dig-home .home-hero { padding-top: 10px; padding-bottom: clamp(76px, 8vw, 120px); }
.dig-home .home-copy { min-width: 0; }
.dig-home h1 { font-size: clamp(1.9rem, 3.4vw, 2.95rem); line-height: 1.12; text-wrap: initial; letter-spacing: -.035em; margin: 0 0 18px; }
.dig-home .home-copy p { color: var(--dig-muted); font-size: .93rem; line-height: 1.65; margin-bottom: 20px; }
.dig-home .home-copy .home-lead { color: var(--dig-heading); font-weight: 600; font-size: 1.08rem; }
.dig-home .home-copy .fine, .dig-home .fine { font-size: .79rem; }
.dig-home .home-button { border-width: 2px; min-height: 44px; padding: 8px 25px; color: var(--dig-heading); }
.dig-home .home-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; margin-top: 26px; }
.dig-home .home-actions .primary { color: #fff; }
.dig-home .home-photo { margin: 0; min-width: 0; }
.dig-home .home-photo img { display: block; width: 100%; height: auto; border-radius: 9px; }
.dig-home .home-categories { padding-bottom: clamp(64px, 7vw, 108px); }
.dig-home .home-categories h2 { margin-bottom: 32px; font-size: clamp(1.45rem, 2.4vw, 1.875rem); }
.dig-home .category-grid { gap: clamp(36px, 4.5vw, 56px); }
.dig-home .category-card { grid-template-columns: 66px minmax(0, 1fr); gap: 24px; padding: 24px 30px; align-items: center; border-radius: 8px; }
.dig-home .category-card h3 { color: var(--dig-blue); font-size: 1.17rem; line-height: 1.3; margin-bottom: 6px; }
.dig-home .category-card p { margin-bottom: 12px; font-size: .84rem; line-height: 1.55; }
.dig-home .category-card .icon { width: 64px; height: 64px; }
.dig-home .pill { font-size: .73rem; padding: 3px 12px; }
.dig-home .home-service { background: #fcf9f3; padding-block: clamp(64px, 7vw, 110px); }
.dig-home .home-service h2 { color: var(--dig-heading); font-size: clamp(1.65rem, 3vw, 2.5rem); line-height: 1.2; text-wrap: initial; margin-bottom: 20px; }
.dig-home .home-copy p:last-child { margin-bottom: 0; }
.dig-home .home-video { min-width: 0; }
.dig-home .home-video-frame { position: relative; width: 100%; aspect-ratio: 2.15; overflow: hidden; border-radius: 9px; background: #15262b; }
/* The frame keeps this proportion before loading, during play, pause and loop.
   Native controls overlay the media; they do not create another block. */
.dig-home .home-video video { display: block; position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; border-radius: inherit; }
.dig-home .home-video-frame:focus-within { outline: 3px solid var(--dig-blue); outline-offset: 5px; }
.dig-home .visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.dig-home .home-repair { padding-top: clamp(64px, 7vw, 104px); padding-bottom: 64px; }
.dig-home .home-repair h2 { font-size: clamp(1.6rem, 3vw, 2.5rem); margin-bottom: 18px; }
.dig-home .home-repair > p { color: var(--dig-muted); font-size: .92rem; line-height: 1.55; margin-bottom: 8px; }
.dig-home .home-repair .request-notice { font-size: .76rem; margin: 24px 0 30px; }
.dig-home .repair-link { font-weight: 600; }
.dig-home .home-delivery-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin-bottom: 22px; }
.dig-home .home-delivery-card { display: grid; grid-template-columns: 48px minmax(0, 1fr); align-items: start; gap: 22px; background: var(--dig-soft); border-radius: 8px; padding: 22px; }
.dig-home .home-delivery-card h3 { font-size: 1rem; color: var(--dig-blue); margin-bottom: 6px; }
.dig-home .home-delivery-card p { color: var(--dig-muted); font-size: .79rem; line-height: 1.5; margin-bottom: 0; }
.dig-home .home-delivery-card .icon { width: 48px; height: 48px; }
.dig-home .delivery-link { display: inline-flex; align-items: center; min-height: 44px; font-size: .88rem; }
@media (max-width: 760px) {
  .dig-home .preview-flag { text-align: left; margin-bottom: 24px; }
  .dig-home .home-photo-layout { grid-template-columns: 1fr; grid-template-areas: "eyebrow" "copy" "media"; row-gap: 18px; }
  .dig-home .home-photo-layout > .home-photo, .dig-home .home-photo-layout > .home-video { margin-top: 18px; }
  .dig-home .home-hero { padding-bottom: 64px; }
  .dig-home .home-copy { max-width: 620px; }
  .dig-home h1 { max-width: 540px; font-size: clamp(1.9rem, 6.1vw, 2.75rem); }
  .dig-home .home-service h2 { font-size: clamp(1.6rem, 5.3vw, 2.3rem); }
  .dig-home .home-categories h2 { font-size: clamp(1.35rem, 4.2vw, 1.65rem); }
  .dig-home .category-grid { gap: 32px; }
  .dig-home .home-service { padding-block: 56px; }
  .dig-home .home-repair h2 { font-size: clamp(1.6rem, 4.8vw, 2.15rem); }
}
@media (max-width: 540px) {
  .dig-home .category-card { grid-template-columns: 48px minmax(0, 1fr); gap: 20px; padding: 20px; }
  .dig-home .category-card .icon { width: 48px; height: 48px; }
  .dig-home .category-card h3 { font-size: 1.05rem; }
  .dig-home .home-delivery-grid { grid-template-columns: 1fr; }
  .dig-home .home-delivery-card { padding: 20px; gap: 18px; }
}
/* LANG-01 — homepage language choice; EN has no destination until translated. */
.dig-home .home-language { display: flex; justify-content: flex-end; align-items: center; flex-wrap: wrap; gap: 6px; min-height: 44px; margin: 0 auto 22px; }
.dig-home .home-language-option { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 6px; border: 0; border-bottom: 2px solid transparent; border-radius: 0; background: transparent; font: inherit; font-size: .75rem; font-weight: 600; line-height: 1.2; text-decoration: none; }
.dig-home .home-language-option[aria-current="page"] { color: var(--dig-blue); border-bottom-color: currentColor; }
.dig-home .home-language-option:disabled { color: var(--dig-muted); cursor: not-allowed; opacity: 1; }
.dig-home .home-language-divider { color: var(--dig-muted); font-size: .75rem; }
.dig-home .home-language small { color: var(--dig-muted); font-size: .7rem; margin-left: 6px; }

/* MOBILE-01 — single-column media on narrow tablets, comfortable reading on phones.
   Approved images, media proportions, playback and desktop design are preserved. */
@media (max-width: 950px) {
  .dig-home .home-photo-layout { grid-template-columns: minmax(0, 1fr); grid-template-areas: "eyebrow" "copy" "media"; row-gap: 16px; }
  .dig-home .home-photo-layout > .home-photo, .dig-home .home-photo-layout > .home-video { margin-top: 8px; }
  .dig-home .home-copy { max-width: none; }
}
@media (max-width: 760px) {
  .dig-home .home-language { margin-bottom: 16px; gap: 4px; }
  .dig-home .home-language-option { font-size: .875rem; }
  .dig-home .home-language small { font-size: .75rem; }
  .dig-home .home-hero { padding-top: 8px; padding-bottom: 44px; }
  .dig-home h1 { max-width: none; font-size: clamp(1.75rem, 6.5vw, 2.125rem); line-height: 1.2; margin-bottom: 16px; }
  .dig-home .home-copy { overflow-wrap: anywhere; }
  .dig-home .home-copy p { font-size: 1rem; line-height: 1.6; margin-bottom: 16px; }
  .dig-home .home-copy .home-lead { font-size: 1.0625rem; }
  .dig-home .home-copy .fine, .dig-home .home-repair .request-notice { font-size: .875rem; }
  .dig-home .home-actions { gap: 12px; margin-top: 20px; }
  .dig-home .home-actions .home-button { min-width: 0; min-height: 48px; max-width: 100%; padding: 12px 16px; font-size: .9375rem; line-height: 1.5; text-align: center; overflow-wrap: anywhere; }
  .dig-home .home-categories h2, .dig-home .home-service h2, .dig-home .home-repair h2 { font-size: var(--dig-title-section); line-height: 1.3; margin-bottom: 20px; }
  .dig-home .home-categories { padding-bottom: 44px; }
  .dig-home .category-grid { gap: 20px; }
  .dig-home .category-card { grid-template-columns: 44px minmax(0, 1fr); align-items: start; gap: 16px; padding: 18px; }
  .dig-home .category-card > div { min-width: 0; overflow-wrap: anywhere; }
  .dig-home .category-card .icon { width: 44px; height: 44px; }
  .dig-home .category-card h3 { font-size: var(--dig-title-card); line-height: 1.4; }
  .dig-home .category-card p { font-size: .9375rem; }
  .dig-home .pill { font-size: .8125rem; padding: 4px 8px; max-width: 100%; }
  .dig-home .home-service { padding-block: 40px; }
  .dig-home .home-repair { padding-block: 40px; }
  .dig-home .home-repair > p { font-size: 1rem; line-height: 1.6; }
  .dig-home .repair-link, .dig-home .delivery-link { display: inline-flex; align-items: center; min-height: 44px; padding-block: 8px; font-size: .9375rem; overflow-wrap: anywhere; }
  .dig-home .home-delivery-grid { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .dig-home .home-delivery-card { grid-template-columns: 36px minmax(0, 1fr); gap: 14px; padding: 18px; }
  .dig-home .home-delivery-card .icon { width: 36px; height: 36px; }
  .dig-home .home-delivery-card p { font-size: .9375rem; line-height: 1.6; }
}
@media (max-width: 540px) {
  .dig-home .home-actions { display: grid; grid-template-columns: minmax(0, 1fr); }
  .dig-home .home-actions .home-button { width: 100%; }
}

/* dig-faq.css */
/* FAQ-02 — private FAQ and homepage excerpt. Shared typography tokens stay authoritative.
   Answers are in HTML; native details/summary need no scripts, schema or network request. */
.dig-product-page .shop-faq .faq-item { margin: 0 0 12px; border: 1px solid var(--dig-line); border-radius: 8px; background: #fff; }
.dig-product-page .shop-faq .faq-item[open] { border-color: #a9c5d6; }
.dig-product-page .shop-faq .faq-item:target { border-color: var(--dig-blue); }
.dig-product-page .shop-faq .faq-item summary { min-height: 52px; padding: 17px 20px; border-radius: 7px; color: var(--dig-heading); font-size: .9rem; line-height: 1.55; font-weight: 600; overflow-wrap: anywhere; }
.dig-product-page .shop-faq .faq-item summary::marker { color: var(--dig-blue); }
.dig-product-page .shop-faq .faq-item summary:hover { background: var(--dig-soft); }
.dig-product-page .shop-faq .faq-item summary:focus-visible { outline: 3px solid var(--dig-blue); outline-offset: 3px; }
.dig-product-page .shop-faq .faq-answer { padding: 0 22px 20px; max-width: 80ch; }
.dig-product-page .shop-faq .faq-answer p { color: var(--dig-muted); font-size: .88rem; line-height: 1.7; margin-bottom: 14px; }
.dig-product-page .shop-faq .faq-answer strong { color: var(--dig-heading); font-weight: 600; }
.dig-product-page .shop-faq .faq-answer p:last-child { margin-bottom: 0; }
.dig-product-page .shop-faq .faq-answer a { display: inline-flex; align-items: center; min-height: 44px; padding-block: 6px; font-size: .82rem; }
.dig-product-page .faq-jump-links { display: flex; flex-wrap: wrap; gap: 10px 14px; margin: 0 0 34px; }
.dig-product-page .faq-jump-links a { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 14px; border: 1px solid var(--dig-line); border-radius: 6px; background: var(--dig-soft); font-size: .8rem; text-decoration: none; }
.dig-product-page .faq-jump-links a:hover { border-color: var(--dig-blue); }
.dig-product-page .faq-full { max-width: 980px; }
.dig-product-page .faq-full .faq-group + .faq-group { margin-top: 42px; }
.dig-product-page .faq-full .faq-group h2 { font-size: var(--dig-title-section); margin-bottom: 20px; }
.dig-product-page .home-faq { padding-block: 44px 52px; background: var(--dig-soft); border-top: 1px solid var(--dig-line); }
.dig-product-page .home-faq .faq-preview-layout { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: clamp(28px, 4vw, 56px); align-items: start; }
.dig-product-page .home-faq .faq-preview-intro { max-width: 420px; min-width: 0; }
.dig-product-page .home-faq h2 { font-size: var(--dig-title-section); margin-bottom: 16px; }
.dig-product-page .home-faq .faq-preview-intro > p:not(.eyebrow) { color: var(--dig-muted); font-size: .88rem; }
.dig-product-page .home-faq .faq-all-link { margin-top: 10px; text-align: center; }
@media (max-width: 760px) {
  .dig-product-page .home-faq { padding-block: 32px 36px; }
  .dig-product-page .home-faq .faq-preview-layout { grid-template-columns: 1fr; gap: 20px; }
  .dig-product-page .faq-full .faq-group + .faq-group { margin-top: 32px; }
  .dig-product-page .faq-jump-links { margin-bottom: 26px; }
  .dig-product-page .shop-faq .faq-item summary { padding: 15px 16px; font-size: .86rem; }
  .dig-product-page .shop-faq .faq-answer { padding: 0 16px 16px; }
}

/* MOBILE-01 — readable answers and comfortable native accordion targets. */
@media (max-width: 760px) {
  .dig-product-page .shop-faq .faq-item summary { font-size: 1rem; line-height: 1.5; padding: 16px; }
  .dig-product-page .shop-faq .faq-answer p { font-size: .9375rem; line-height: 1.65; overflow-wrap: anywhere; }
  .dig-product-page .shop-faq .faq-answer a { font-size: .875rem; max-width: 100%; overflow-wrap: anywhere; }
  .dig-product-page .home-faq .faq-preview-layout > * { min-width: 0; }
  .dig-product-page .home-faq .faq-preview-intro > p:not(.eyebrow) { font-size: 1rem; }
  .dig-product-page .home-faq { padding-block: 36px; }
  .dig-product-page .home-faq .faq-all-link { width: 100%; min-height: 48px; padding: 12px 16px; font-size: .9375rem; line-height: 1.5; overflow-wrap: anywhere; }
  .dig-product-page .faq-jump-links a { font-size: .875rem; }
}

/* i4M 12.11.2026: integración en el tema DIG Boutique */
.dig-maquette .wp-block-post-title{display:none}
.dig-maquette main,.dig-maquette .wp-block-post-content{margin-top:0;padding-top:0}
.dig-maquette .wp-block-group.alignfull.dig-product-page{max-width:none;margin-left:0;margin-right:0}
