
/* Packaging-led Royal Fisheries identity */
.primary{color:white;background:var(--action)}.primary:hover{color:white;background:var(--action-hover)}.wordmark{color:var(--ink);gap:0}.footer-identity .wordmark{color:white}.photo-frame{border-color:#3389ca}.product-brand-section{padding:65px 7%;background:#f0f6fc}.brand-section-heading{max-width:680px;margin-bottom:35px}.brand-section-heading h2{margin:15px 0}.brand-section-heading p{font-size:16px;line-height:1.8}.product-brands-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.product-brand{background:white;border:1px solid #d9e4f0;border-radius:18px;overflow:hidden;display:grid;grid-template-columns:1fr 1fr;align-items:center}.brand-pack{padding:24px;background:white}.brand-pack img{width:100%;height:290px;object-fit:contain}.brand-copy{padding:28px 28px 28px 0}.brand-logo{height:90px;display:flex;align-items:center;margin-bottom:20px}.brand-logo img{max-height:90px;width:auto;max-width:100%;object-fit:contain}.brand-logo.royale img{max-height:105px}.brand-copy h3{font-size:24px;margin-bottom:12px}.brand-copy p{font-size:13px;line-height:1.8}.brand-copy a{display:inline-block;margin-top:20px;color:#0752a3;text-decoration:underline;text-underline-offset:4px;font-size:13px}.brand-image-credit{font-size:11px;margin-top:22px;color:#50647c}.brand-route{padding:24px 7%;border-top:1px solid #d9e4f0;border-bottom:1px solid #d9e4f0;display:flex;gap:20px;align-items:center;justify-content:space-between}.brand-route p{font-size:14px}.brand-route a{font-size:14px;color:#0752a3;text-decoration:underline}.species-card{background:white}.species-photo figcaption{background:#f0f6fc}.sourcing-section .species-card{background:#f6f9fd}.catalogue-evidence{background:#f0f6fc}@media(max-width:1050px){.product-brand{grid-template-columns:1fr}.brand-pack img{height:250px}.brand-copy{padding:0 28px 30px}.brand-logo{max-width:240px}.brand-logo.royale{margin-top:5px}}@media(max-width:600px){.product-brands-grid{grid-template-columns:1fr}.product-brand-section{padding:45px 7%}.brand-pack img{height:260px}.brand-route{align-items:flex-start;flex-direction:column;gap:10px}.brand-section-heading p{font-size:15px}}

.royale-header{display:block;flex-shrink:0}.royale-header img{width:116px;height:auto;display:block}@media(max-width:920px){.header nav{top:100%}}@media(max-width:650px){.royale-header img{width:100px}}

.new-supply{border-top:3px solid #104f9e}.range-label.planned{color:#104f9e;font-weight:700}.new-lines .range-visual h2{margin-top:12px}.supply-article{padding:55px 7% 75px;max-width:1450px;margin:auto}.supply-article>.back-link{display:block;margin-bottom:30px}.supply-article>.intro-label{display:block;margin-bottom:20px}.supply-article h1{max-width:900px}.article-lead{font-size:20px;line-height:1.75;max-width:820px;margin:25px 0}.article-status{display:inline-block;padding:12px 18px;background:#f0f6fc;color:#164a7b;border-radius:8px;font-size:13px;margin-bottom:30px}.article-product-photos{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.article-product-photos img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;border-radius:14px}.article-product-photos figcaption{font-size:13px;margin-top:14px;line-height:1.6}.article-photo-note{font-size:11px;color:#50647c;margin-top:18px}.article-copy{max-width:750px;margin:45px auto 0}.article-copy h2{font-size:30px;margin:35px 0 20px}.article-copy p{font-size:16px;margin-bottom:20px}.article-copy .button{margin-top:15px}.supply-news{padding:45px 7%;border-top:1px solid #d9e4f0;border-bottom:1px solid #d9e4f0;background:#f0f6fc}.supply-news h2{margin:15px 0}.supply-news p{max-width:700px}@media(max-width:650px){.article-product-photos{grid-template-columns:1fr}.supply-article{padding-top:35px}.article-lead{font-size:17px}.article-copy h2{font-size:26px}}

/* One header rhythm across every page. */
.header{min-height:96px;padding:18px 5%;gap:32px;flex-wrap:nowrap;position:relative}.header .royale-header{width:116px;height:58px;display:flex;align-items:center;justify-content:center}.header .royale-header img{width:116px;height:auto}.header nav{display:flex;position:static;width:auto;align-items:center;flex-wrap:nowrap;gap:28px;font-size:14px;padding:0;border:0;box-shadow:none}.header nav>a:not(.button){display:flex;align-items:center;min-height:48px;padding:0!important;white-space:nowrap}.header nav .button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;margin:0;font-size:14px;white-space:nowrap}.header .menu-button{display:none}
@media(max-width:1000px){.header{min-height:82px;padding:16px 6%;gap:20px}.header .royale-header{width:100px;height:50px}.header .royale-header img{width:100px}.header .menu-button{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex-direction:column;gap:6px;margin-left:auto}.header nav{display:none;position:absolute;top:100%;left:6%;right:6%;width:auto;padding:18px;background:#fff;border:1px solid var(--line);box-shadow:0 10px 35px #102f5720;border-radius:12px;z-index:20}.header nav.open{display:flex;align-items:stretch;flex-direction:column;gap:4px}.header nav>a:not(.button){padding:10px 12px!important;min-height:44px}.header nav .button{margin-top:8px;flex-basis:auto;font-size:14px}.header .menu-button span{display:block;width:20px;height:2px;background:var(--ink)}}

/* Align the Royalé lettering with the menu; let its flourish descend below. */
.header .royale-header img{transform:translateY(10px)}
@media(max-width:1000px){.header .royale-header img{transform:translateY(8px)}}

.header .royale-header img{filter:url(#royale-blue)}

/* More compact typography on phones. */
@media(max-width:650px){.hero h1{font-size:34px;line-height:1.14;letter-spacing:-.8px;max-width:370px}.hero-copy>p{font-size:14px;line-height:1.7;margin-top:18px}.hero .intro-label{font-size:12px;margin-bottom:15px}.hero-copy{padding-top:12px}.photo-page h1,.quality-heading h1,.catalogue-heading h1{font-size:34px;line-height:1.15;letter-spacing:-.8px}.photo-page-heading>p,.quality-heading>p{font-size:14px;line-height:1.75}}
@media(max-width:360px){.hero h1,.photo-page h1,.quality-heading h1,.catalogue-heading h1{font-size:31px}}

/* Buyer-facing readability and clear navigation. */
.species-photo figcaption,.range-label{font-size:12px;line-height:1.6}.footer-bottom{font-size:12px}.header nav>a[aria-current="page"]{color:var(--action);text-decoration:underline;text-underline-offset:7px}.brands-page .product-brand-section{padding:32px;border-radius:16px;margin-bottom:40px}.brands-page .brand-section-heading{display:none}.photo-page-body h2{font-size:25px;line-height:1.3;margin:30px 0 18px}.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:56px;max-width:1040px;margin:0 auto 55px}.contact-details h2{font-size:28px;margin:0 0 22px}.contact-details p{font-size:15px;line-height:1.85;color:var(--muted);margin:18px 0}.contact-details a:not(.button){display:block;margin:14px 0;color:var(--action)}.contact-details .preview-contact-note{font-size:13px;padding:18px;background:var(--ice);border-radius:8px}.species-card[id]{scroll-margin-top:28px}.footer-identity p{max-width:280px}html:not(.js) .header nav{display:flex;position:static;flex-wrap:wrap}html:not(.js) .header{flex-wrap:wrap}html:not(.js) .menu-button{display:none}
@media(max-width:650px){.draft-detail{display:inline;font-size:11px}.draft-bar>span{line-height:1.65}.contact-details{grid-template-columns:1fr;gap:30px}.brands-page .product-brand-section{padding:20px}.species-photo figcaption,.range-label{font-size:12px}.footer-bottom{font-size:12px}}

.enquiry-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#send-status{min-height:1.5em;overflow-wrap:anywhere}#enquiry-preview{max-height:40vh;overflow:auto;overflow-wrap:anywhere;white-space:pre-wrap}#send-enquiry[hidden]{display:none}.dialog-actions{flex-wrap:wrap}
