/* mod2: colour scheme only. Layout, typography and behaviour inherit mod1. */
:root {
  --aq-purple: #3a1b6e;
  --aq-purple-hover: #2b1453;
  --aq-turquoise: #25bcbd;
  --aq-teal-text: #117b7d;
  --aq-lavender: #f2f2ff;
  --aq-colour-border: #dcd6e9;
}
body { background-color: #fff; color: #333; }
a { color: var(--aq-teal-text); }
a:hover { color: var(--aq-purple); }
#top { background-color: var(--aq-lavender) !important; border-bottom-color: var(--aq-colour-border) !important; }
#top .btn-link, #top-links a { color: var(--aq-purple); }
#menu.aq-catalog-nav { background: var(--aq-turquoise) !important; border-color: var(--aq-turquoise) !important; }
#menu .aq-catalog-toggle { color: var(--aq-purple) !important; }
#menu .aq-catalog-toggle:hover { background-color: #50cacc !important; }
#menu .aq-catalog-panel, #menu .aq-catalog-root>details, #menu .aq-catalog-leaf { border-color: var(--aq-colour-border) !important; }
#menu .aq-catalog-root>details, #menu .aq-catalog-leaf { background-color: var(--aq-lavender) !important; }
#menu summary, #menu .aq-catalog-leaf { color: var(--aq-purple) !important; }
#menu .aq-catalog-icon { color: var(--aq-teal-text) !important; }
#menu summary:hover, #menu .aq-catalog-leaf:hover, #menu .aq-catalog-children a:hover { background-color: #e6f7f7 !important; color: var(--aq-teal-text) !important; }
#menu .aq-catalog-children a { color: var(--aq-purple); }
#menu a.aq-catalog-all { background: linear-gradient(#503084, #3a1b6e) !important; color: #fff !important; border-color: var(--aq-purple-hover) !important; box-shadow: 0 3px 0 #241044, 0 5px 10px rgba(58,27,110,.18), inset 0 1px 0 rgba(255,255,255,.15); }
#menu a.aq-catalog-all:hover { background: var(--aq-purple-hover) !important; box-shadow: 0 2px 0 #241044, 0 3px 7px rgba(58,27,110,.18); }
#menu a.aq-catalog-all:active { box-shadow: inset 0 2px 4px rgba(0,0,0,.18); }
#menu .aq-catalog-toggle:focus-visible, #menu summary:focus-visible, #menu a:focus-visible { outline-color: var(--aq-turquoise) !important; }
#common-home .aq-home-hero { background-color: var(--aq-lavender) !important; border-color: var(--aq-colour-border) !important; }
#common-home .aq-home-hero h1, #common-home .aq-home-categories h2, #common-home .aq-home-category-card h3 { color: var(--aq-purple) !important; }
#common-home .aq-home-hero p { color: #514661 !important; }
#common-home .aq-home-eyebrow, #common-home .aq-home-category-card>span, #common-home .aq-home-category-image>.fa { color: var(--aq-teal-text) !important; }
#common-home .aq-home-cta { background-color: var(--aq-purple) !important; color: #fff !important; }
#common-home .aq-home-cta:hover { background-color: var(--aq-purple-hover) !important; }
#common-home .aq-home-category-card { border-color: var(--aq-colour-border) !important; }
#common-home .aq-home-category-card:hover { border-color: var(--aq-turquoise) !important; box-shadow: 0 4px 12px rgba(58,27,110,.1); }
#common-home .aq-home-cta:focus-visible, #common-home .aq-home-category-card:focus-visible { outline-color: var(--aq-teal-text) !important; }
.btn-primary, #search .btn, #cart>button { background: var(--aq-purple) !important; color: #fff !important; border-color: var(--aq-purple-hover) !important; }
.btn-primary:hover, .btn-primary:active, #search .btn:hover, #cart>button:hover { background: var(--aq-purple-hover) !important; }
.btn-default { background: var(--aq-lavender); border-color: var(--aq-colour-border); color: var(--aq-purple); }
.btn-default:hover, .btn-default.active { background: #e5def0; border-color: #b9a8d1; color: var(--aq-purple-hover); }
.btn:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline-color: var(--aq-teal-text) !important; }
.breadcrumb { background-color: var(--aq-lavender) !important; border-color: var(--aq-colour-border) !important; }
.breadcrumb a { color: var(--aq-purple) !important; }
.aq-smart-filter .aq-filter-toggle { background: var(--aq-purple) !important; color: #fff !important; border-color: var(--aq-purple-hover) !important; }
.aq-smart-filter .aq-filter-toggle:hover { background: var(--aq-purple-hover) !important; }
.aq-smart-filter .aq-filter-body { border-color: var(--aq-colour-border); }
.aq-smart-filter input { accent-color: var(--aq-purple); }
.aq-smart-filter .aq-active-filter-count { background-color: var(--aq-teal-text); color: #fff; }
.list-group a.active, .list-group a.active:hover { background-color: var(--aq-lavender) !important; color: var(--aq-purple) !important; border-color: var(--aq-colour-border) !important; }
.product-thumb { border-color: var(--aq-colour-border); }
.product-thumb h4 a { color: var(--aq-purple); }
.product-thumb h4 a:hover { color: var(--aq-teal-text); }
.product-thumb .button-group { background-color: var(--aq-lavender); border-top-color: var(--aq-colour-border); }
.product-thumb .button-group>button { background-color: var(--aq-lavender); color: var(--aq-purple); border-left-color: var(--aq-colour-border); }
.product-thumb .button-group>button:first-child { background-color: var(--aq-purple); color: #fff; }
.product-thumb .button-group>button:hover { background-color: #e5def0; color: var(--aq-purple-hover); }
.product-thumb .button-group>button:first-child:hover { background-color: var(--aq-purple-hover); color: #fff; }
.pagination>.active>a, .pagination>.active>span { background-color: var(--aq-purple); border-color: var(--aq-purple); color: #fff; }
.pagination>li>a, .pagination>li>span { color: var(--aq-purple); }
.pagination>li>a:hover { background-color: var(--aq-lavender); color: var(--aq-purple-hover); }
footer { background-color: var(--aq-purple) !important; border-top-color: var(--aq-turquoise) !important; color: #eae3f7 !important; }
footer h5 { color: #fff !important; border-bottom-color: rgba(37,188,189,.6) !important; }
footer ul.list-unstyled li a, footer a { color: #eae3f7 !important; }
footer ul.list-unstyled li a:hover, footer a:hover { color: #fff !important; }
footer .aq-wa-restore { background: var(--aq-purple-hover) !important; color: #fff !important; border-color: #ad9ac7 !important; }
footer .aq-wa-restore:hover { background: #241044 !important; }
footer .aq-wa-restore:focus-visible { outline-color: var(--aq-turquoise) !important; }


/* Category templates have inline colour rules; these keep the palette consistent. */
#product-category #aq-product-results .product-grid .product-thumb { border-color: var(--aq-colour-border) !important; }
#aq-product-results .product-thumb h4 a, #aq-product-results .product-thumb .price { color: var(--aq-purple) !important; }
#aq-product-results .product-thumb h4 a:hover, #product-category #compare-total { color: var(--aq-teal-text) !important; }
#product-category #aq-product-results .product-thumb .button-group button { background: var(--aq-lavender) !important; color: var(--aq-purple) !important; }
#product-category #aq-product-results .product-thumb .button-group button:first-child { background: var(--aq-purple) !important; color: #fff !important; }
#product-category #aq-product-results .product-thumb .button-group button:hover { background: #e5def0 !important; color: var(--aq-purple-hover) !important; }
#product-category #aq-product-results .product-thumb .button-group button:first-child:hover { background: var(--aq-purple-hover) !important; color: #fff !important; }
#aq-product-results .product-thumb .button-group button:focus-visible { outline-color: var(--aq-teal-text) !important; }


/* Complete mod2 palette across catalogue, search, product and account controls. */
body #column-left .list-group a, body #column-right .list-group a { color:var(--aq-purple)!important; border-bottom-color:var(--aq-colour-border)!important; }
body #column-left .list-group a.active, body #column-right .list-group a.active { background:var(--aq-lavender)!important; color:var(--aq-purple)!important; }
body #column-left .list-group a:hover, body #column-right .list-group a:hover { background:#e6f7f7!important; color:var(--aq-teal-text)!important; }
body .aq-smart-filter { box-shadow:0 3px 10px rgba(58,27,110,.14); }
body .aq-smart-filter .aq-filter-toggle { background:var(--aq-purple)!important; border-color:var(--aq-purple-hover)!important; }
body .aq-smart-filter .aq-filter-toggle:hover { background:var(--aq-purple-hover)!important; }
body .aq-smart-filter .aq-filter-body { background:#fff!important; border-color:var(--aq-colour-border)!important; }
body .aq-smart-filter .aq-filter-actions { background:var(--aq-lavender)!important; border-color:var(--aq-colour-border)!important; }
body .aq-smart-filter .aq-filter-name, body .aq-smart-filter .aq-range-manual label { color:var(--aq-purple)!important; }
body .aq-smart-filter .aq-filter-group, body .aq-smart-filter .aq-unknown-option { border-color:var(--aq-colour-border)!important; }
body .aq-smart-filter .aq-filter-unit { color:#665d73; }
body .aq-smart-filter .aq-range-track:before { background:var(--aq-colour-border)!important; }
body .aq-smart-filter .aq-range-fill { background:var(--aq-turquoise)!important; }
body .aq-smart-filter input[type=range]::-webkit-slider-thumb { border-color:var(--aq-purple)!important; background:#fff!important; }
body .aq-smart-filter input[type=range]::-moz-range-thumb { border-color:var(--aq-purple)!important; background:#fff!important; }
body .aq-smart-filter input[type=checkbox] { accent-color:var(--aq-purple); }
body .aq-smart-filter .aq-range-manual input { border-color:var(--aq-colour-border)!important; }
body .product-thumb { border-color:var(--aq-colour-border)!important; }
body .product-thumb:hover { border-color:var(--aq-turquoise)!important; box-shadow:0 5px 18px rgba(58,27,110,.12)!important; }
body .product-thumb h4 a, body .product-thumb .price { color:var(--aq-purple)!important; }
body .product-thumb h4 a:hover { color:var(--aq-teal-text)!important; }
body .product-thumb .button-group { background:var(--aq-lavender)!important; border-color:var(--aq-colour-border)!important; }
body .product-thumb .button-group>button { background:var(--aq-lavender)!important; color:var(--aq-purple)!important; border-color:var(--aq-colour-border)!important; }
body .product-thumb .button-group>button:first-child { background:var(--aq-purple)!important; color:#fff!important; }
body .product-thumb .button-group>button:hover { background:#e5def0!important; color:var(--aq-purple-hover)!important; }
body .product-thumb .button-group>button:first-child:hover { background:var(--aq-purple-hover)!important; color:#fff!important; }
body #button-cart, body button#button-cart, body #button-search, body #button-quick-order { background:var(--aq-purple)!important; color:#fff!important; border-color:var(--aq-purple-hover)!important; box-shadow:0 4px 12px rgba(58,27,110,.25)!important; }
body #button-cart:hover, body button#button-cart:hover, body #button-search:hover, body #button-quick-order:hover { background:var(--aq-purple-hover)!important; }
body #content h1, body #content h2, body #content h3, body #content legend { color:var(--aq-purple); }
body .nav-tabs { border-bottom-color:var(--aq-colour-border); }
body .nav-tabs>li>a { color:var(--aq-purple); }
body .nav-tabs>li.active>a, body .nav-tabs>li.active>a:hover, body .nav-tabs>li.active>a:focus { color:var(--aq-purple)!important; background:var(--aq-lavender)!important; border-color:var(--aq-colour-border)!important; border-bottom-color:transparent!important; }
body .nav-tabs>li>a:hover { background:#e6f7f7; border-color:var(--aq-colour-border); }
body .panel-default>.panel-heading, body .well, body .table-striped>tbody>tr:nth-of-type(odd) { background-color:var(--aq-lavender); border-color:var(--aq-colour-border); }
body .panel-default>.panel-heading a { color:var(--aq-purple); }
body .btn-group .btn-default, body .btn-default { background:var(--aq-lavender)!important; color:var(--aq-purple)!important; border-color:var(--aq-colour-border)!important; }
body .btn-group .btn-default:hover, body .btn-default:hover, body .btn-default.active { background:#e5def0!important; color:var(--aq-purple-hover)!important; border-color:#b9a8d1!important; }
body .form-control:focus, body input[name="quantity"]:focus { border-color:var(--aq-teal-text)!important; box-shadow:0 0 0 3px rgba(37,188,189,.16)!important; }
body .pagination>.active>a, body .pagination>.active>span { background:var(--aq-purple)!important; border-color:var(--aq-purple)!important; color:#fff!important; }
body .pagination>li>a:hover { background:var(--aq-lavender)!important; color:var(--aq-purple)!important; }

/* Informational and service pages share the same mod2 colours. */
body .aq-info { --aq-ink:var(--aq-purple); --aq-accent:var(--aq-teal-text); }
body .aq-info .aq-hero { background:linear-gradient(125deg,var(--aq-lavender),#fff); border-color:var(--aq-colour-border); }
body .aq-info .aq-card, body .aq-info .aq-section, body .aq-info .aq-form { border-color:var(--aq-colour-border); }
body .aq-info .aq-kicker { color:var(--aq-teal-text); }
body .aq-info a { color:var(--aq-teal-text); }
body .aq-info a:hover { color:var(--aq-purple); }
body .aq-info a:focus-visible { outline-color:var(--aq-teal-text); }
body .aq-info .aq-note { background:var(--aq-lavender); border-left-color:var(--aq-turquoise); }
body .aq-info .aq-btn, body .aq-info a.aq-btn { background:var(--aq-purple); color:#fff!important; }
body .aq-info a.aq-btn:hover { background:var(--aq-purple-hover); }
body .btn-info { background:var(--aq-purple)!important; color:#fff!important; border-color:var(--aq-purple-hover)!important; }
body .btn-info:hover { background:var(--aq-purple-hover)!important; }


/* A few turquoise accents balance the purple without colouring every control. */
body #common-home .aq-home-hero { border-left:5px solid var(--aq-turquoise)!important; }
body #common-home .aq-home-eyebrow { display:inline-block;background:#e6f7f7;color:var(--aq-teal-text)!important;padding:3px 10px;border-radius:20px; }
body #common-home .aq-home-category-image { background:#e6f7f7!important; }
body #common-home .aq-home-category-image>.fa { color:var(--aq-teal-text)!important; }
body #common-home .aq-home-category-card:hover { box-shadow:0 4px 14px rgba(37,188,189,.16)!important; }
body .aq-smart-filter .aq-filter-body { border-bottom:3px solid var(--aq-turquoise)!important; }
body .aq-quick-order { border-top:3px solid var(--aq-turquoise); }
body .aq-quick-order h3>.fa { color:var(--aq-teal-text); }
body .aq-quick-order .aq-quick-success { color:var(--aq-purple);text-transform:uppercase;line-height:1.7; }
body .aq-quick-complete { background:#e6f7f7; }
body .nav-tabs>li.active>a { box-shadow:inset 0 3px 0 var(--aq-turquoise); }
body .aq-catalog-container { position:sticky;top:0;z-index:1020;background:#fff;padding-top:6px;padding-bottom:6px;margin-bottom:16px; }
body .aq-catalog-container #menu { margin-bottom:0!important; }
html { scroll-padding-top:72px; }
