.catalogue-access { box-sizing: border-box; width: min(100% - 2rem, 38rem); margin: 0 auto; padding: 3rem 0; color: #10213a; font-family: Inter, Arial, sans-serif; }
.catalogue-access h1 { margin: 0 0 1rem; font-size: clamp(1.8rem, 4vw, 2.6rem); line-height: 1.2; }
.catalogue-access p { margin: 1rem 0; line-height: 1.65; }
.catalogue-access form { margin-top: 1.25rem; }
.catalogue-access label { display: block; margin-bottom: .5rem; font-weight: 600; }
.catalogue-access input[type=email] { box-sizing: border-box; width: 100%; min-height: 48px; padding: .75rem; border: 1px solid #778392; border-radius: .35rem; font: inherit; }
.catalogue-access .catalogue-access__primary { display: inline-flex; justify-content: center; align-items: center; box-sizing: border-box; min-height: 48px; max-width: 100%; border: 1px solid #d8bd84; border-radius: .35rem; padding: .85rem 1.2rem; background: #d8bd84; color: #10213a; font: inherit; font-weight: 700; text-align: center; text-decoration: none; cursor: pointer; }
.catalogue-access__primary:hover { background: #e5cd9c; }
.catalogue-access__secondary { min-height: 44px; padding: .5rem 0; border: 0; background: transparent; color: #10213a; font: inherit; text-decoration: underline; cursor: pointer; }
.catalogue-access__security { margin: 1.25rem 0; }
.catalogue-access :focus-visible { outline: 2px solid #10213a; outline-offset: 4px; }
@media (max-width: 36rem) { .catalogue-access .catalogue-access__primary { width: 100%; } }
