/* Moisture Seal Pact - policy (Seed Tape Bench / Archview)
 Foil seal-strip nav | sealed kraft pact sheet with foil spine.
 Not Edict Plate / Detour Board / Flight Rules / Rule Blotter / quarry sidebar. */

.page-a106-moisture-pact {
 overflow-x: clip;
 background:
 radial-gradient(ellipse 44% 30% at 8% 0%, rgba(232, 212, 168, 0.5), transparent 55%),
 radial-gradient(ellipse 34% 26% at 96% 8%, rgba(10, 126, 164, 0.12), transparent 50%),
 linear-gradient(170deg, var(--a106-field) 0%, var(--a106-field-warm) 58%, #E6F0E9 100%);
}

.page-a106-moisture-pact .mp-stage {
 padding: 8px 0 var(--a106-space-6);
}

.page-a106-moisture-pact .mp-kicker {
 margin: 0 0 8px;
 font-size: 0.72rem;
 font-weight: 800;
 letter-spacing: 0.14em;
 text-transform: uppercase;
 color: var(--a106-clay);
}

.page-a106-moisture-pact .mp-mast {
 padding: 22px 0 10px;
 max-width: 46rem;
}

.page-a106-moisture-pact .mp-mast h1 {
 margin: 0 0 8px;
 font-family: var(--a106-font-display);
 font-size: clamp(2rem, 5vw, 2.9rem);
 font-weight: 600;
 color: var(--a106-ink);
 line-height: 1.08;
}

.page-a106-moisture-pact .mp-lede {
 margin: 0 0 10px;
 color: var(--a106-mute);
 max-width: 58ch;
 line-height: 1.55;
}

.page-a106-moisture-pact .mp-lede strong {
 color: var(--a106-ink);
 font-weight: 700;
}

.page-a106-moisture-pact .mp-revised {
 margin: 0;
 font-size: 0.85rem;
 color: var(--a106-mute);
}

.page-a106-moisture-pact .mp-revised em {
 font-style: normal;
 font-weight: 800;
 letter-spacing: 0.1em;
 text-transform: uppercase;
 color: var(--a106-drip-deep);
 margin-right: 6px;
}

/* Foil seal strips */
.page-a106-moisture-pact .mp-seals {
 display: flex;
 flex-wrap: wrap;
 gap: 10px;
 padding: 14px 0 20px;
}

.page-a106-moisture-pact .mp-seal {
 position: relative;
 display: grid;
 gap: 4px;
 min-width: 118px;
 padding: 12px 14px 14px;
 text-decoration: none;
 color: var(--a106-ink);
 background:
 linear-gradient(135deg, rgba(255, 255, 255, 0.35), transparent 40%),
 linear-gradient(165deg, #D4E8F0 0%, #A8C9D6 45%, var(--a106-drip) 100%);
 border: 2px solid var(--a106-drip-deep);
 box-shadow: 2px 2px 0 rgba(42, 33, 24, 0.2);
 opacity: 0;
 transform: translateY(12px) rotate(-0.6deg);
 transition: opacity 0.4s var(--a106-ease), transform 0.4s var(--a106-ease), filter 0.2s ease, background 0.2s ease;
 transition-delay: calc(var(--mp-ti, 0) * 50ms);
 overflow: hidden;
}

.page-a106-moisture-pact .mp-seals.is-strung .mp-seal {
 opacity: 1;
 transform: none;
}

.page-a106-moisture-pact .mp-seal-foil {
 position: absolute;
 inset: 0;
 z-index: 0;
 background:
 linear-gradient(
 115deg,
 transparent 20%,
 rgba(255, 255, 255, 0.45) 40%,
 transparent 55%,
 rgba(255, 255, 255, 0.2) 70%,
 transparent 85%
 );
 pointer-events: none;
 opacity: 0.7;
}

.page-a106-moisture-pact .mp-seal strong {
 position: relative;
 z-index: 1;
 font-size: 0.88rem;
 font-weight: 800;
 color: inherit;
}

.page-a106-moisture-pact .mp-seal-mark {
 position: relative;
 z-index: 1;
 font-size: 0.68rem;
 font-weight: 800;
 letter-spacing: 0.12em;
 color: var(--a106-soil);
}

.page-a106-moisture-pact .mp-seal--clay {
 background:
 linear-gradient(135deg, rgba(255, 255, 255, 0.3), transparent 40%),
 linear-gradient(165deg, #F0D4C4 0%, #D98A5C 50%, var(--a106-clay) 100%);
 border-color: var(--a106-clay-deep);
}

.page-a106-moisture-pact .mp-seal--sprout {
 background:
 linear-gradient(135deg, rgba(255, 255, 255, 0.35), transparent 40%),
 linear-gradient(165deg, #EEF8C8 0%, #D4F06A 50%, var(--a106-sprout) 100%);
 border-color: #6A8A18;
 color: var(--a106-sprout-ink);
}

.page-a106-moisture-pact .mp-seal--bloom {
 background:
 linear-gradient(135deg, rgba(255, 255, 255, 0.3), transparent 40%),
 linear-gradient(165deg, #F8D0E4 0%, #E85A9A 50%, var(--a106-bloom) 100%);
 border-color: var(--a106-bloom-deep);
 color: var(--a106-on-bloom);
}

.page-a106-moisture-pact .mp-seal--bloom strong {
 color: var(--a106-on-bloom);
 text-shadow: 0 1px 0 rgba(42, 33, 24, 0.35);
}

.page-a106-moisture-pact .mp-seal--bloom .mp-seal-mark {
 color: rgba(255, 245, 250, 0.95);
}

.page-a106-moisture-pact .mp-seal.is-live {
 filter: brightness(1.05);
 box-shadow: 0 0 0 3px var(--a106-sprout), 3px 3px 0 var(--a106-soil);
 transform: translateY(-3px);
}

.page-a106-moisture-pact .mp-seals.is-strung .mp-seal.is-live {
 transform: translateY(-3px);
}

.page-a106-moisture-pact .mp-seal:hover:not(.is-live) {
 filter: brightness(1.08);
 transform: translateY(-2px);
}

.page-a106-moisture-pact .mp-seal:active {
 transform: translateY(1px);
}

/* Sealed kraft pact sheet */
.page-a106-moisture-pact .mp-layout {
 padding-bottom: 8px;
}

.page-a106-moisture-pact .mp-sheet {
 position: relative;
 display: grid;
 grid-template-columns: 14px minmax(0, 1fr);
 background: var(--a106-kraft);
 border: 3px solid var(--a106-soil);
 box-shadow: var(--a106-hard);
 opacity: 0;
 transform: translateY(16px);
 transition: opacity 0.5s var(--a106-ease), transform 0.5s var(--a106-ease);
}

.page-a106-moisture-pact .mp-sheet.is-open {
 opacity: 1;
 transform: none;
}

.page-a106-moisture-pact .mp-spine {
 background:
 linear-gradient(
 180deg,
 #C8DCE6 0%,
 var(--a106-drip) 18%,
 #8EC4D4 40%,
 var(--a106-clay) 62%,
 #E8B89A 78%,
 var(--a106-sprout) 100%
 );
 box-shadow: inset -2px 0 0 rgba(255, 255, 255, 0.35);
 min-height: 100%;
}

.page-a106-moisture-pact .mp-sheet-inner {
 padding: 28px 28px 32px;
 background:
 linear-gradient(90deg, rgba(42, 33, 24, 0.05) 0, transparent 16px),
 repeating-linear-gradient(
 0deg,
 transparent,
 transparent 31px,
 rgba(42, 33, 24, 0.05) 31px,
 rgba(42, 33, 24, 0.05) 32px
 ),
 linear-gradient(165deg, #F5E8C8 0%, var(--a106-kraft) 55%, #DFC898 100%);
}

.page-a106-moisture-pact .mp-stamp {
 margin: 0 0 18px;
 display: inline-block;
 padding: 6px 12px;
 font-size: 0.72rem;
 font-weight: 800;
 letter-spacing: 0.14em;
 text-transform: uppercase;
 color: var(--a106-drip-deep);
 background: rgba(10, 126, 164, 0.12);
 border: 2px dashed var(--a106-drip);
}

/* Keep .rb-body for JS heading observer */
.page-a106-moisture-pact .rb-body,
.page-a106-moisture-pact .mp-body {
 color: var(--a106-ink);
 max-width: 62ch;
}

.page-a106-moisture-pact .rb-body h2 {
 margin: 0 0 10px;
 font-family: var(--a106-font-display);
 font-size: 1.35rem;
 font-weight: 600;
 color: var(--a106-ink);
 opacity: 1;
 transform: translateX(-6px);
 transition: transform 0.4s var(--a106-ease);
}

.page-a106-moisture-pact .rb-body h2.is-drawn {
 transform: none;
}

.page-a106-moisture-pact .rb-body h2 + p,
.page-a106-moisture-pact .rb-body h2 + ul {
 margin-top: 0;
}

.page-a106-moisture-pact .rb-body p {
 margin: 0 0 14px;
 line-height: 1.65;
 color: var(--a106-ink);
}

.page-a106-moisture-pact .rb-body p strong {
 color: var(--a106-ink);
 font-weight: 700;
}

.page-a106-moisture-pact .rb-body ul {
 margin: 0 0 16px;
 padding-left: 1.15rem;
}

.page-a106-moisture-pact .rb-body li {
 margin-bottom: 8px;
 line-height: 1.55;
 color: var(--a106-ink);
}

.page-a106-moisture-pact .rb-body li strong {
 color: var(--a106-ink);
}

.page-a106-moisture-pact .rb-body a {
 color: var(--a106-drip-deep);
 font-weight: 700;
 text-underline-offset: 2px;
}

.page-a106-moisture-pact .rb-body a:hover {
 color: var(--a106-clay);
}

.page-a106-moisture-pact .rb-body h2:not(:first-child) {
 margin-top: 28px;
 padding-top: 10px;
 border-top: 2px solid rgba(10, 126, 164, 0.2);
}

@media (max-width: 800px) {
 .page-a106-moisture-pact .mp-seal {
 min-width: calc(50% - 5px);
 flex: 1 1 calc(50% - 5px);
 }
}

@media (max-width: 640px) {
 .page-a106-moisture-pact .mp-sheet-inner {
 padding: 20px 16px 24px;
 }
 .page-a106-moisture-pact .mp-seal strong {
 font-size: 0.82rem;
 }
}

@media (prefers-reduced-motion: reduce) {
 .page-a106-moisture-pact .mp-seal,
 .page-a106-moisture-pact .mp-sheet,
 .page-a106-moisture-pact .rb-body h2 {
 transition: none;
 opacity: 1;
 transform: none;
 }
}

.page-a106-moisture-pact .mp-seal:focus-visible,
.page-a106-moisture-pact .rb-body a:focus-visible {
 outline: 3px solid var(--a106-sprout);
 outline-offset: 2px;
}
