[hidden] { display: none !important; }
.header-mobile-only { display:none; }
.footer-email .eyebrow { font-size:.6rem; margin-bottom:12px; }
.site-footer .footer-email h2 { margin:0 0 18px; font-size:clamp(1.9rem,2.8vw,3.1rem); font-weight:600; letter-spacing:-.045em; }
.footer-email__address { display:inline-block; font-size:clamp(.8rem,1.05vw,1.05rem); border-bottom:1px solid #111; overflow-wrap:anywhere; }
.footer-email > p:last-child { margin-top:14px; color:#65645f; max-width:300px; }
.support-intro { max-width:1100px; margin:0 auto; padding:78px 40px 55px; text-align:center; }
.support-intro h1 { margin:0 0 22px; font-size:clamp(2.8rem,5.7vw,5.8rem); font-weight:600; line-height:1.02; }
.support-intro > p:last-child { max-width:560px; margin:0 auto; color:#65645f; font-size:1rem; line-height:1.7; }
.support-content { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:90px; max-width:1150px; margin:0 auto; padding:15px 32px 95px; align-items:start; }
.support-aside { position:sticky; top:100px; background:#e7e5ff; padding:32px; }
.support-aside h2 { font-size:3rem; font-weight:550; margin-bottom:22px; }
.support-aside > a:not(.text-link) { font-size:.82rem; border-bottom:1px solid #111; overflow-wrap:anywhere; }
.support-aside p:not(.eyebrow) { font-size:.82rem; margin:20px 0; color:#5b5866; }
.support-aside .text-link { font-size:.75rem; }
.policy-date { color:#77746c; font-size:.72rem; margin-bottom:35px; }
.policy-copy { min-width:0; }
.policy-copy section { margin-bottom:36px; }
.policy-copy section h2 { font-size:1.55rem; font-weight:600; letter-spacing:-.03em; line-height:1.2; margin-bottom:14px; }
.policy-copy section p,.policy-copy section li { font-size:.93rem; line-height:1.85; color:#5e5c56; }
.policy-copy ul { padding-left:20px; }
.policy-copy li { margin:8px 0; }
.policy-copy p a { text-decoration:underline; text-underline-offset:4px; overflow-wrap:anywhere; }
.policy-copy > .button { margin:10px 0 28px; }
.contact-feature { display:grid; grid-template-columns:1.2fr 1fr; max-width:1190px; margin:0 auto 65px; background:#e7e5ff; }
.contact-feature > div { padding:clamp(30px,4vw,70px); display:flex; flex-direction:column; justify-content:center; align-items:start; }
.contact-email { font-size:clamp(1.45rem,2.7vw,2.7rem); line-height:1.2; letter-spacing:-.04em; border-bottom:1px solid #111; margin:6px 0 22px; overflow-wrap:anywhere; }
.contact-feature > img { width:100%; height:100%; aspect-ratio:1; object-fit:cover; }
.contact-feature p:not(.eyebrow) { color:#5b5866; font-size:.85rem; max-width:410px; line-height:1.8; }
.contact-actions { display:flex; align-items:center; gap:20px; flex-wrap:wrap; }
.email-copy { border:0; background:transparent; padding:5px 0; color:#111; font-size:.75rem; text-decoration:underline; text-underline-offset:5px; }
.email-copy-status { min-height:1.5em; margin:10px 0 0!important; font-size:.72rem!important; }
.support-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:38px; max-width:1190px; padding:0 24px 90px; margin:0 auto; }
.support-cards article { border-top:1px solid #cfcdc5; padding-top:25px; }
.support-cards article > span { font-size:.7rem; color:#716f66; }
.support-cards h2 { font-size:1.7rem; font-weight:600; margin:18px 0; }
.support-cards p { font-size:.84rem; color:#65645f; }
.support-cards a { font-size:.78rem; font-weight:600; border-bottom:1px solid #111; }
.faq-list details { border-top:1px solid #d5d2ca; padding:23px 0; }
.faq-list details:last-of-type { border-bottom:1px solid #d5d2ca; }
.faq-list summary { list-style:none; position:relative; font-size:1rem; line-height:1.5; font-weight:600; padding-right:35px; cursor:pointer; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary::after { content:'+'; position:absolute; right:5px; top:0; font-weight:400; font-size:1.3rem; }
.faq-list details[open] summary::after { content:'−'; }
.faq-list p { margin:18px 0 0; color:#65645f; font-size:.9rem; line-height:1.85; }
.faq-list > a { margin-top:30px; font-size:.85rem; }
.guide-comparison { padding:24px 40px 80px; max-width:1380px; margin:auto; }
.guide-comparison h2 { font-size:clamp(2.5rem,4vw,4rem); font-weight:550; margin-bottom:40px; }
.guide-tool-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; }
.guide-tool-grid img { width:100%; aspect-ratio:1; object-fit:contain; background:#f0efeb; mix-blend-mode:multiply; }
.guide-tool-grid h3 { margin:20px 0 12px; font-size:1.15rem; letter-spacing:-.02em; font-weight:600; line-height:1.3; }
.guide-tool-grid p { color:#65645f; font-size:.84rem; }
.guide-tool-grid a.text-link { font-size:.8rem; }
.guide-feature { display:grid; grid-template-columns:1fr 1fr; background:#e7e5ff; }
.guide-feature > img { width:100%; height:100%; object-fit:cover; }
.guide-feature > div { padding:clamp(35px,6vw,90px); }
.guide-feature h2 { font-size:clamp(2.8rem,4.5vw,4.7rem); font-weight:550; }
.guide-feature h3 { font-size:.93rem; letter-spacing:0; font-weight:600; }
.guide-feature p,.guide-feature li { color:#5b5866; font-size:.9rem; }
.guide-feature ul { padding-left:18px; margin-bottom:28px; }
.guide-feature li { margin:7px 0; }
.guide-nutrition { text-align:center; max-width:680px; padding:85px 24px; margin:auto; }
.guide-nutrition h2 { font-size:clamp(2.8rem,5vw,4.5rem); font-weight:550; }
.guide-nutrition p:not(.eyebrow) { color:#65645f; }
.care-notes-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; padding:0 40px 90px; max-width:1380px; margin:auto; }
.care-notes-grid img { aspect-ratio:1; object-fit:contain; background:#f0efeb; }
.care-notes-grid .eyebrow { margin:23px 0 12px; font-size:.65rem; }
.care-notes-grid h2 { font-size:1.8rem; font-weight:550; line-height:1.12; margin-bottom:15px; }
.care-notes-grid p:not(.eyebrow) { color:#65645f; font-size:.85rem; }
.care-notes-grid .text-link { font-size:.8rem; }
.care-note-image { max-height:520px; object-fit:contain; background:#f0efeb; margin-bottom:40px; }
.sitemap-links { display:grid; grid-template-columns:1fr 1fr; gap:0 45px; max-width:1000px; margin:auto; padding:0 32px 90px; }
.sitemap-links a { display:flex; justify-content:space-between; gap:20px; border-top:1px solid #d5d2ca; padding:20px 0; font-size:.9rem; }
.not-found-actions { display:flex; justify-content:center; align-items:center; gap:25px; padding:10px 24px 100px; flex-wrap:wrap; }
.email-dialog { width:min(590px,calc(100% - 32px)); }
.email-dialog__content { padding:44px; }
.email-dialog h2 { font-size:clamp(2.5rem,6vw,3.8rem); font-weight:550; margin-bottom:25px; }
.email-dialog__address { display:inline-block; overflow-wrap:anywhere; font-size:1rem; text-decoration:underline; text-underline-offset:5px; margin-bottom:25px; }
.email-dialog .button { display:flex; width:100%; background:#111; color:#fff; }
.email-app-note { font-size:.76rem; color:#65645f; line-height:1.8; margin:16px 0; }
.email-bag-preview { max-height:200px; overflow:auto; border-top:1px solid #d9d7cf; border-bottom:1px solid #d9d7cf; padding:12px 0; margin-bottom:20px; font-size:.76rem; }
.email-bag-preview h3 { font-size:.9rem; letter-spacing:0; margin:0 0 12px; }
.email-bag-preview p { margin:5px 0; }
.email-bag-preview .email-bag-total { margin-top:12px; font-weight:700; }
.home-help { display:grid; grid-template-columns:1fr 1fr; gap:50px; padding:70px clamp(24px,7vw,110px); background:#e7e5ff; align-items:center; }
.home-help h2 { font-size:clamp(2.5rem,4.6vw,4.4rem); font-weight:550; margin:0; }
.home-help > div:last-child p { max-width:450px; color:#5b5866; }
.home-help a { margin:12px 28px 0 0; font-size:.85rem; }
/* Preserve the full dog-and-bottle composition instead of cropping the product. */
.fish-oil-hero { display:grid; grid-template-columns:52% 48%; min-height:0; overflow:hidden; background:#5ebed7; }
.fish-oil-hero__image { position:static; grid-column:2; grid-row:1; width:100%; height:auto; align-self:center; object-fit:contain; object-position:center; }
.fish-oil-hero__shade { display:none; }
.fish-oil-hero__copy { grid-column:1; grid-row:1; width:100%; min-height:clamp(440px,34vw,610px); background:#b9705e; padding:45px 32px; }
.fish-oil-hero__copy::after { content:''; position:absolute; z-index:2; top:0; right:-22px; width:24px; height:100%; background:radial-gradient(circle at 0 50%,#b9705e 0 58%,transparent 61%) 0 0/24px 72px repeat-y; }
.fish-oil-hero__copy h1 { font-size:clamp(3.3rem,6.1vw,6.5rem); max-width:none; }
.fish-oil-hero__copy > p:not(.eyebrow) { max-width:none; font-size:clamp(.77rem,.95vw,.9rem); }
.category-tile > img { aspect-ratio:1; height:auto; object-fit:contain; background:#f0efeb; }
@media (max-width:1000px) {
 .support-content { grid-template-columns:minmax(0,1fr) 245px; gap:38px; }
 .support-aside { padding:25px; }
 .contact-feature { margin-inline:24px; }
 .contact-feature > div { padding:30px; }
 .care-notes-grid { gap:22px; padding-inline:24px; }
}
@media (max-width:900px) {
 .header-mobile-only { display:block; }
 .fish-oil-hero { grid-template-columns:1fr; }
 .fish-oil-hero__copy { grid-column:1; grid-row:1; min-height:0; padding:48px 24px 42px; }
 .fish-oil-hero__copy::after { top:auto; bottom:-22px; right:0; width:100%; height:24px; background:radial-gradient(circle at 50% 0,#b9705e 0 58%,transparent 61%) 0 0/72px 24px repeat-x; }
 .fish-oil-hero__image { grid-column:1; grid-row:2; width:100%; height:auto; aspect-ratio:1.5; }
 .fish-oil-hero__copy h1 { font-size:clamp(3.25rem,8.8vw,4.8rem); }
 .fish-oil-hero__copy > p:not(.eyebrow) { max-width:50ch; font-size:.88rem; white-space:normal; }
 .home-help { gap:28px; padding:55px 28px; }
}
@media (max-width:700px) {
 .support-intro { padding:48px 22px 36px; }
 .support-intro h1 { font-size:clamp(2.6rem,9vw,3.8rem); }
 .support-intro > p:last-child { font-size:.87rem; }
 .support-content { grid-template-columns:1fr; gap:35px; padding:5px 24px 55px; }
 .support-aside { position:static; }
 .support-aside h2 br { display:none; }
 .support-aside h2 { font-size:2.2rem; }
 .policy-copy section h2 { font-size:1.35rem; }
 .policy-copy section p,.policy-copy section li { font-size:.86rem; }
 .contact-feature { grid-template-columns:1fr; margin:0 16px 40px; }
 .contact-feature > div { padding:32px 24px; }
 .contact-email { font-size:clamp(1.4rem,6vw,2rem); }
 .contact-feature > img { max-height:330px; object-position:center; }
 .support-cards { grid-template-columns:1fr; gap:32px; padding:0 24px 55px; }
 .faq-list summary { font-size:.93rem; }
 .faq-list p { font-size:.85rem; }
 .guide-comparison { padding:5px 24px 50px; }
 .guide-comparison h2 { font-size:2.6rem; }
 .guide-tool-grid { grid-template-columns:1fr; gap:38px; }
 .guide-tool-grid img { max-height:350px; }
 .guide-feature { grid-template-columns:1fr; }
 .guide-feature > img { aspect-ratio:1.2; }
 .guide-feature > div { padding:38px 24px; }
 .guide-feature h2 { font-size:2.8rem; }
 .guide-nutrition { padding:55px 24px; }
 .care-notes-grid { grid-template-columns:1fr; padding:0 24px 55px; gap:42px; }
 .care-notes-grid img { max-height:350px; }
 .care-notes-grid h2 { font-size:1.8rem; }
 .sitemap-links { grid-template-columns:1fr; padding:0 24px 55px; }
 .email-dialog__content { padding:36px 24px 25px; }
 .email-dialog__address { font-size:.9rem; }
 .home-help { grid-template-columns:1fr; gap:22px; }
 .home-help h2 { font-size:2.8rem; }
 .fish-oil-hero__copy h1 { margin-bottom:23px; }
}
