/* Catalogue extension: inherits the approved Tyneside navy/teal identity. */
[hidden]{display:none!important}
.catalogue-hero,.detail-hero{background:var(--ice);padding:56px 0 35px;border-bottom:1px solid var(--line)}
.catalogue-hero h1{max-width:900px;font-size:clamp(36px,4.2vw,62px);line-height:1.08}
.catalogue-hero .intro{max-width:780px;font-size:17px}
.catalogue-tabs{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}
.catalogue-tabs a{padding:10px 15px;background:#fff;border:1px solid var(--line);border-radius:8px;text-decoration:none;font-size:14px;font-weight:700;min-height:44px}
.catalogue-tabs a[aria-current=page]{background:var(--navy);color:#fff;border-color:var(--navy)}
.catalogue-listing{padding:32px 0 65px;background:#f8fafb}
.catalogue-notice{background:#fff;border:1px solid var(--line);border-left:4px solid var(--teal);padding:16px 20px;border-radius:8px;font-size:14px;line-height:1.6;margin-bottom:24px}
.catalogue-notice strong{color:var(--navy)}
.catalogue-controls{margin:0 0 25px}
.catalogue-search-row{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) auto;gap:16px;align-items:end}
.catalogue-search-row label,.licence-panel label{display:block;font-size:14px;font-weight:700;color:var(--navy);margin:0 0 8px}
.catalogue-search-row input,.catalogue-search-row select,.licence-panel select{width:100%;height:48px;padding:9px 12px;border:1px solid #9eafb7;border-radius:7px;background:white;color:var(--ink);font-size:16px}
.catalogue-search-row input::placeholder{color:#5b6b77;font-size:14px}
.catalogue-search-row .button{min-height:48px}
.catalogue-types{margin:20px 0 12px}
#catalogue-count{font-size:14px;color:var(--muted);margin-top:13px}
.catalogue-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;align-items:stretch}
.catalogue-card{border:1px solid var(--line);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;background:#fff;box-shadow:0 4px 12px #16324b06;min-width:0;transition:box-shadow .15s}
.catalogue-card:hover{box-shadow:0 9px 22px #16324b14}
.catalogue-image-link{display:block;text-decoration:none}
.catalogue-art{height:175px;position:relative;background:#eaf1f5;border-bottom:1px solid var(--line);padding:13px 10px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.catalogue-art>img{width:100%;height:100%;object-fit:contain;box-shadow:0 6px 12px #142b4815;background:white}
.art-tag{position:absolute;right:7px;bottom:7px;padding:2px 7px;font-size:8px;letter-spacing:.055em;background:var(--navy);color:white;border-radius:3px;line-height:1.65}
.text-cover{background:var(--navy);color:#deedef;flex-direction:column;text-align:center;padding:18px 22px;gap:8px}
.text-cover>svg{width:32px;height:32px;color:var(--aqua)}
.text-cover-title{font-size:18px;font-weight:700;line-height:1.16;color:#fff}
.text-cover>span:last-child{font-size:11px;color:#d3e5e9;line-height:1.45}
.catalogue-card-body{padding:22px 19px;display:flex;flex-direction:column;gap:12px;flex:1}
.catalogue-type{font-size:10px;font-weight:700;letter-spacing:.06em;line-height:1.5;text-transform:uppercase;color:var(--teal)}
.catalogue-card h3{font-size:22px;line-height:1.17;letter-spacing:-.025em;overflow-wrap:anywhere}
.catalogue-card h3 a{text-decoration:none}
.catalogue-card h3 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.catalogue-summary{font-size:14px;color:var(--muted);line-height:1.65}
.catalogue-card-bottom{margin-top:auto;padding-top:10px}
.catalogue-price{font-size:17px;line-height:1.4;font-weight:700;color:var(--navy)}
.catalogue-status{font-size:11px;line-height:1.5;color:#506672;margin:6px 0 15px!important}
.catalogue-card .text-link{font-size:14px;min-height:35px}
.catalogue-end{margin-top:45px;padding:32px;background:#eaf4f4;border:1px solid var(--line);border-radius:16px}
.catalogue-end h2{font-size:30px}
.catalogue-end p{max-width:750px;font-size:16px;margin:14px 0 20px}
.catalogue-empty{padding:45px 25px;background:white;border:1px dashed var(--line);border-radius:12px}
.catalogue-empty h2{font-size:28px;margin-bottom:14px}
.detail-hero{padding-top:30px}
.detail-hero h1{font-size:clamp(35px,4.3vw,58px);max-width:950px;line-height:1.1}
.detail-hero .intro{font-size:18px;max-width:820px}
.breadcrumbs{display:flex;gap:11px;flex-wrap:wrap;font-size:13px;color:var(--muted);margin-bottom:26px}
.breadcrumbs a{text-underline-offset:3px;min-height:26px}
.review-hold{background:#fff4df;border:1px solid #dab46e;color:#664a21;border-radius:8px;padding:13px 17px;font-size:14px;margin-top:22px;max-width:850px}
.detail-area{padding:30px 0 62px}
.detail-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);gap:38px;align-items:start}
.detail-content{min-width:0}
.detail-preview{margin:0;background:var(--ice);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.detail-preview>img{width:100%;height:auto;padding:14px;max-height:345px;object-fit:contain}
.detail-preview figcaption{font-size:12px;color:#455f6d;line-height:1.6;padding:0 17px 14px}
.preview-thumbs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:15px 0 12px}
.preview-thumbs button{border:1px solid var(--line);background:#fff;border-radius:9px;overflow:hidden;padding:8px;color:var(--teal);min-width:0}
.preview-thumbs img{width:100%;height:95px;object-fit:contain}
.preview-thumbs span{font-size:12px;font-weight:700;line-height:1.5;display:block;margin-top:7px}
.small{font-size:12px;color:var(--muted);line-height:1.65;margin:13px 0}
.detail-text-cover{border:1px solid var(--line);border-radius:14px;overflow:hidden;margin-bottom:20px}
.detail-text-cover .text-cover{height:230px}
.detail-text-cover .text-cover-title{font-size:28px;max-width:500px}
.detail-text-cover p{padding:15px 20px;font-size:13px;color:var(--muted)}
.detail-section{padding-top:28px;margin-top:18px;border-top:1px solid var(--line)}
.detail-section h2{font-size:28px;line-height:1.2;margin-bottom:15px;letter-spacing:-.025em}
.detail-section p,.detail-section li{font-size:16px;color:#365163;line-height:1.75}
.detail-section ul{margin:0;padding-left:22px}
.detail-section li+li{margin-top:9px}
.detail-release-note{font-size:12px;line-height:1.65;padding:14px 17px;background:#f1f5f6;border-radius:8px;margin-top:18px}
.safety-note{padding:23px;border:1px solid var(--line);border-radius:12px;background:#f8fafb;margin-bottom:20px}
.safety-note h2{font-size:23px}
.safety-note p{font-size:14px}
.licence-panel{padding:27px;background:#f0f7f8;border:1px solid #ccdfe2;border-radius:16px}
.licence-panel .eyebrow{font-size:11px;margin-bottom:12px}
.licence-panel h2{font-size:29px;line-height:1.16;margin-bottom:23px}
.licence-panel>p{font-size:14px;line-height:1.7}
.licence-panel .detail-price{font-size:30px;font-weight:700;color:var(--navy);line-height:1.2;margin:20px 0 14px}
.licence-description{min-height:68px;color:#365163}
.licence-rule{font-size:12px!important;color:var(--muted);margin:14px 0 17px}
.licence-panel>.button{width:100%;margin-top:9px;text-align:center;line-height:1.5}
.purchase-disabled{background:#e0e8eb;color:#455965;border-color:#c4d1d7;cursor:not-allowed;opacity:1}
.licence-table-wrap{overflow-x:auto;margin-top:25px}
.licence-table{width:100%;border-collapse:collapse;font-size:13px;line-height:1.5}
.licence-table caption{text-align:left;font-weight:700;color:var(--navy);font-size:13px;margin-bottom:10px}
.licence-table th,.licence-table td{text-align:left;padding:11px 0;border-bottom:1px solid #d0dfe1;vertical-align:top}
.licence-table th{font-weight:600;width:56%;padding-right:14px}
.licence-table td{font-weight:700;color:var(--navy)}
.licence-table thead{font-size:12px;color:var(--muted)}
.related-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:900px}
#programs .catalogue-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
#artwork-dialog{max-width:min(970px,94vw);width:970px;max-height:90vh;border:0;border-radius:14px;padding:24px;color:var(--ink);box-shadow:0 20px 70px #0005}
#artwork-dialog::backdrop,#review-detail-dialog::backdrop{background:#071d3db3}
.artwork-dialog-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}
.artwork-dialog-top h2{font-size:25px}
#artwork-dialog-image{max-height:65vh;object-fit:contain;width:100%}
#artwork-dialog>p{font-size:13px;line-height:1.6;margin-top:18px}
#review-detail-dialog{border:0;border-radius:14px;width:1150px;max-width:96vw;max-height:94vh;padding:0}
.review-modal-bar{position:sticky;top:0;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:12px 20px;gap:15px;z-index:3;font-size:13px}
.review-modal-content .detail-hero{padding-top:25px}
.review-modal-content .detail-hero h1{font-size:38px}
@media(max-width:1150px){.header-row{gap:16px}.nav{gap:16px}.catalogue-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.detail-grid{gap:25px}.catalogue-card h3{font-size:21px}}
@media(max-width:900px){.catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalogue-search-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.catalogue-search-row .button{grid-column:1/-1;justify-self:start}.detail-grid{grid-template-columns:1fr}.licence-panel{max-width:680px}.detail-preview>img{max-height:410px}.catalogue-hero{padding-top:35px}#programs .catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.catalogue-grid,.related-grid,#programs .catalogue-grid{grid-template-columns:1fr}.catalogue-search-row{grid-template-columns:1fr}.catalogue-art{height:205px}.catalogue-card-body{padding:22px}.catalogue-card h3{font-size:24px}.catalogue-summary{font-size:15px}.catalogue-hero h1{font-size:38px}.catalogue-hero .intro{font-size:16px}.catalogue-tabs{gap:8px}.catalogue-tabs a{font-size:12px;padding:9px 11px}.detail-hero h1{font-size:36px;overflow-wrap:anywhere}.detail-hero .intro{font-size:16px}.licence-panel{padding:22px}.preview-thumbs img{height:72px}.catalogue-notice{padding:14px;font-size:13px}.detail-section h2{font-size:26px}.detail-section p,.detail-section li{font-size:15px}.catalogue-end{padding:25px}.catalogue-end h2{font-size:28px}.text-cover-title{font-size:23px}.artwork-dialog-top{align-items:start}.artwork-dialog-top h2{font-size:21px}#artwork-dialog{padding:17px}.review-modal-content .detail-hero h1{font-size:30px}.review-modal-bar{font-size:11px}.checkout-link-label{display:inline!important;font-size:11px}.header-actions{gap:7px}.checkout-link{padding:7px!important;gap:5px!important}.checkout-link svg{width:18px;height:18px}}
@media(prefers-reduced-motion:reduce){.catalogue-card{transition:none}html{scroll-behavior:auto}}
/* Retain the labelled menu and accessible catalogue icon on small phones. */
@media(max-width:360px){.checkout-link-label{display:none!important}.header-row{gap:8px}.header-actions{gap:5px}}
