/*
Theme Name: Dee Why Grand Pharmacy
Description: A portable, native WordPress block theme for Dee Why Grand Pharmacy. Alliance Pharmacy is the primary brand, with Independent Pharmacies Australia as the secondary affiliation. WooCommerce supplies all store, cart and checkout functionality when installed.
Version: 1.0.0
Requires at least: 6.6
Requires PHP: 7.4
Author: Dee Why Grand Pharmacy
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: dee-why-grand
Tags: block-patterns, full-site-editing, custom-colors, custom-logo, editor-style, e-commerce, wide-blocks
*/

/* Layout and small visual refinements only. Content remains in core blocks. */
html { scroll-behavior: smooth; }
body { margin: 0; }
*, *::before, *::after { box-sizing: border-box; }
img { max-width: 100%; height: auto; }
a { text-underline-offset: 0.18em; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 3px solid #1a1a5d;
  outline-offset: 4px;
}
main [id] { scroll-margin-top: 1.5rem; }
.wp-site-blocks > * { margin-block-start: 0; }
.dwgp-header { border-bottom: 1px solid var(--wp--preset--color--line); }
.dwgp-brand-row { gap: 1.5rem 2rem; }
.dwgp-primary-brand { flex: 1 1 40rem; gap: 1.25rem 2rem; }
.dwgp-alliance-logo { flex: 0 0 auto; margin: 0; }
.dwgp-alliance-logo img { display: block; width: 190px; height: auto; }
.dwgp-site-name { max-width: 31rem; }
.dwgp-site-name .wp-block-site-title { margin: 0; }
.dwgp-site-name .wp-block-site-title a { text-decoration: none; }
.dwgp-affiliation { flex: 0 1 12rem; text-align: center; }
.dwgp-affiliation p { max-width: 12rem; margin-inline: auto; }
/* The supplied IPA PNG is unchanged; this crops its surrounding white space in CSS. */
.dwgp-ipa-logo { width: 150px; height: 67px; overflow: hidden; margin: 0 auto; }
.dwgp-ipa-logo img { display: block; width: 150px; max-width: none; height: 150px; margin-top: -42px; }
.dwgp-navigation { border-top: 1px solid var(--wp--preset--color--line); padding-top: 1rem; }
.dwgp-navigation .wp-block-navigation-item__content { text-decoration: none; }
.dwgp-navigation .wp-block-navigation-item__content:hover { text-decoration: underline; }
.dwgp-hero h1 { max-width: 12ch; }
.dwgp-hero a:focus-visible { outline-color: #fff; }
.dwgp-hero .wp-block-button__link:hover { filter: brightness(0.96); }
.dwgp-hero-panel { height: 100%; border-radius: 0.4rem; }
.dwgp-hero-panel h2 { max-width: 18ch; }
.dwgp-entrance-photo { margin: 0; }
.dwgp-entrance-photo img { display: block; width: 100%; border-radius: 0.4rem; }
.dwgp-entrance-photo figcaption { color: inherit; font-size: 0.8125rem; }
.dwgp-card { height: 100%; border: 1px solid var(--wp--preset--color--line); border-radius: 0.4rem; }
.dwgp-card .wp-block-heading { margin-top: 0; }
.dwgp-eyebrow { font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; }
.dwgp-service-number { font-variant-numeric: tabular-nums; }
.dwgp-team-panel { border-left: 5px solid var(--wp--preset--color--red); }
.dwgp-hours table { border-collapse: collapse; width: 100%; }
.dwgp-hours th, .dwgp-hours td { border: 0; border-bottom: 1px solid var(--wp--preset--color--line); padding: 0.8rem 0.6rem; text-align: left; vertical-align: top; }
.dwgp-hours thead { border-bottom: 2px solid var(--wp--preset--color--navy); }
.dwgp-hours th:first-child, .dwgp-hours td:first-child { padding-left: 0; }
.dwgp-hours th:last-child, .dwgp-hours td:last-child { padding-right: 0; }
.dwgp-hours figcaption { font-size: 0.875rem; }
.dwgp-shop-status { border: 1px solid #e1cac7; border-radius: 0.4rem; }
.dwgp-category-label { border-top: 2px solid var(--wp--preset--color--red); padding-top: 1rem; }
.dwgp-footer a, .dwgp-footer a:hover { color: #fff; }
.dwgp-footer a:focus-visible { outline-color: #fff; }
.dwgp-footer-brand { background: #fff; border-radius: 0.25rem; width: 176px; padding: 0.6rem; }
.dwgp-footer .dwgp-ipa-logo { width: 150px; }
.dwgp-footer address { font-style: normal; }
.dwgp-post-list { padding-left: 0; }
.dwgp-post-list > li { list-style: none; border-bottom: 1px solid var(--wp--preset--color--line); padding-block: 1.5rem; }
.dwgp-empty-state { border: 1px solid var(--wp--preset--color--line); padding: 1.5rem; }
.wp-block-button__link { transition: background-color 0.15s ease, color 0.15s ease; }
.wp-block-button.is-style-outline > .wp-block-button__link { border-width: 2px; }
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button { border-radius: 0.25rem; }
.woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt { background: var(--wp--preset--color--red); color: #fff; }
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .woocommerce input.button.alt:hover { background: #8f0808; color: #fff; }

@media (max-width: 781px) {
  .dwgp-primary-brand { flex-basis: 100%; justify-content: center; text-align: center; }
  .dwgp-affiliation { flex-basis: 100%; display: flex; align-items: center; justify-content: center; gap: 0.6rem; text-align: left; }
  .dwgp-affiliation .dwgp-ipa-logo { flex: 0 0 110px; width: 110px; height: 49px; margin: 0; }
  .dwgp-affiliation .dwgp-ipa-logo img { width: 110px; height: 110px; margin-top: -31px; }
  .dwgp-affiliation p { flex: 0 1 11rem; max-width: 11rem; margin: 0; }
  .dwgp-hero h1 { max-width: 15ch; }
  .dwgp-hero .wp-block-columns { gap: 1.75rem; }
  .dwgp-alliance-logo img { width: 162px; }
  .dwgp-navigation { justify-content: center; }
}
@media (max-width: 480px) {
  .dwgp-primary-brand { flex-direction: column; gap: 0.9rem; }
  .dwgp-site-name .wp-block-site-title { font-size: 1.65rem !important; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .wp-block-button__link { transition: none; }
}
@media print {
  .dwgp-navigation, .wp-block-button { display: none !important; }
  .dwgp-hero, .dwgp-footer { background: #fff !important; color: #111 !important; }
  .dwgp-hero *, .dwgp-footer * { color: #111 !important; }
}
