/* Shared components: buttons, rules */
/* ===== Buttons ===== */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:var(--tap-min);padding:0 22px;border:0;border-radius:var(--radius-btn);font-family:var(--font-serif);font-size:13px;font-weight:500;letter-spacing:.02em;text-transform:uppercase;color:var(--on-dark);background:var(--seal-600);text-decoration:none;cursor:pointer;box-shadow:inset 0 -2px 0 rgba(0,0,0,.18)}
.btn:hover{filter:brightness(1.08)}
.btn:active{transform:translateY(1px);box-shadow:none}
.btn--text{font-family:var(--font-display);text-transform:none;font-size:16px;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;background:var(--burgundy-700);padding:0 26px}
.btn--intl{background:var(--navy-900)}

.heart-rule{display:flex;align-items:center;gap:10px;max-width:1040px;margin:0 auto;padding:0 var(--space-4);color:var(--sepia-900)}
.heart-rule::before,.heart-rule::after{content:"";flex:1;height:5px}
.heart-rule::before{background:linear-gradient(90deg,transparent,currentColor 25%);border-radius:0 3px 3px 0}
.heart-rule::after{background:linear-gradient(270deg,transparent,currentColor 25%);border-radius:3px 0 0 3px}
.heart-rule span{font-size:34px;line-height:1}
