/* Save & Convey cookie consent (Cybersalt 2026-10-08; bottom popup 2026-10-09 per Tim) - see cs-consent.js.
   Self-contained and scoped (.cs-cc*), so neither the Joomla template nor the lander style.css can restyle it.
   Colours (WCAG 2.2 AA, measured): text #333 on #FFF 12.6:1; link #007FA9 on #FFF 4.56:1 (underlined);
   Accept = #FFF on #007FA9 4.56:1; Reject = #007FA9 on #FFF 4.56:1 with a #007FA9 border; focus ring #B35900 on #FFF 4.83:1.
   Layout: a fixed popup at the bottom of the screen. Desktop/tablet = a card in the bottom-left corner (clear of the
   accessibility button bottom-right and the Telephone tab on the right). Phones = a full-width sheet along the bottom;
   while it is open the accessibility button is lifted above it and the page gets bottom padding so nothing is unreachable. */
.cs-cc{ position:fixed; left:20px; bottom:20px; z-index:99990; display:block; box-sizing:border-box; width:440px; max-width:calc(100% - 40px);
	margin:0; padding:0; background:#FFFFFF; color:#333333; border-top:4px solid #009FD4; border-radius:6px;
	box-shadow:0 6px 24px rgba(0,0,0,.28), 0 1px 3px rgba(0,0,0,.18);
	max-height:calc(100vh - 40px); overflow-y:auto;
	font-family:Roboto, Arial, sans-serif; font-size:15px; line-height:1.45; text-align:left; }
.cs-cc *, .cs-cc *::before, .cs-cc *::after{ box-sizing:border-box; }
.cs-cc-inner{ padding:16px 18px 18px; display:flex; flex-direction:column; gap:12px; }
.cs-cc-text{ min-width:0; }
.cs-cc .cs-cc-title{ margin:0 0 4px; padding:0; background:none; border:0; font:700 17px/1.3 Roboto, Arial, sans-serif; color:#333333; letter-spacing:0; text-transform:none; }
.cs-cc .cs-cc-title:focus{ outline:3px solid #B35900; outline-offset:2px; }
.cs-cc .cs-cc-p{ margin:0; padding:0; font-size:15px; line-height:1.45; color:#333333; }
.cs-cc .cs-cc-a, .cs-cc .cs-cc-a:visited{ color:#007FA9; text-decoration:underline; text-underline-offset:2px; }
.cs-cc .cs-cc-a:hover{ color:#00618A; }
.cs-cc-actions{ display:flex; flex-wrap:wrap; gap:10px; }
.cs-cc .cs-cc-btn{ display:inline-block; flex:1 1 0; margin:0; min-height:44px; min-width:44px; padding:10px 12px; border:2px solid #007FA9; border-radius:3px;
	font:500 15px/1.2 Roboto, Arial, sans-serif; letter-spacing:0; text-transform:none; text-shadow:none; box-shadow:none; cursor:pointer; white-space:normal; }
.cs-cc .cs-cc-accept{ background:#007FA9; color:#FFFFFF; }
.cs-cc .cs-cc-accept:hover{ background:#00618A; border-color:#00618A; }
.cs-cc .cs-cc-reject{ background:#FFFFFF; color:#007FA9; }
.cs-cc .cs-cc-reject:hover{ background:#E8F4F9; }
.cs-cc .cs-cc-btn:focus, .cs-cc .cs-cc-a:focus, .cs-cc .cs-cc-btn:focus-visible, .cs-cc .cs-cc-a:focus-visible{ outline:3px solid #B35900 !important; outline-offset:2px !important; }
/* Phones (portrait): full-width sheet along the bottom. */
@media (max-width:600px){
	.cs-cc{ left:0; right:0; bottom:0; width:auto; max-width:none; border-radius:0; max-height:70vh; }
	.cs-cc-inner{ padding:12px 14px 14px; gap:10px; }
	.cs-cc .cs-cc-title{ font-size:16px; }
	.cs-cc .cs-cc-p{ font-size:14px; }
	.cs-cc .cs-cc-btn{ padding:10px 8px; font-size:14px; }
	html.cs-cc-open body{ padding-bottom:var(--cs-cc-h, 0px) !important; }
	html.cs-cc-open ._access-icon{ bottom:calc(var(--cs-cc-h, 0px) + 12px) !important; top:auto !important; }
}
/* Short landscape phones: a compact bar-style popup along the bottom (text and buttons side by side). The 8 Oct rule
   keeps the accessibility button in the header band here, so it needs no lifting. */
@media (orientation:landscape) and (max-height:500px){
	.cs-cc{ left:0; right:0; bottom:0; width:auto; max-width:none; border-radius:0; max-height:60vh; }
	.cs-cc-inner{ flex-direction:row; align-items:center; padding:8px 16px; gap:8px 16px; }
	.cs-cc-text{ flex:1 1 auto; }
	.cs-cc .cs-cc-title{ display:inline; font-size:15px; margin-right:6px; }
	.cs-cc .cs-cc-p{ display:inline; font-size:13px; line-height:1.35; }
	.cs-cc-actions{ flex:0 0 auto; flex-direction:column; gap:6px; }
	.cs-cc .cs-cc-btn{ min-height:40px; padding:6px 12px; font-size:14px; }
	html.cs-cc-open body{ padding-bottom:var(--cs-cc-h, 0px) !important; }
}
/* "Cookie settings" link under the copyright line (a real <button>, styled as a link). Both footers are dark
   (Joomla #666666 = white link 5.74:1) or light (landers' white copyright strip = #535353 link 7.4:1); cs-consent.js picks the class from the measured background. !important because
   the template and lander stylesheets style <button>. */
.cs-cc-settings{ display:inline !important; margin:4px 0 0 !important; padding:0 !important; background:transparent !important;
	border:0 !important; box-shadow:none !important; font:inherit !important; color:#535353 !important;
	text-decoration:underline !important; text-underline-offset:2px; cursor:pointer; min-height:24px; line-height:24px !important; }
.cs-cc-settings:hover{ text-decoration-thickness:2px !important; }
.cs-cc-settings:focus, .cs-cc-settings:focus-visible{ outline:3px solid #B35900 !important; outline-offset:2px !important; }
.cs-cc-settings.cs-cc-settings--on-dark{ color:#FFFFFF !important; }               /* 5.74:1 on Joomla's #666 footer */
.cs-cc-settings.cs-cc-settings--on-dark:focus, .cs-cc-settings.cs-cc-settings--on-dark:focus-visible{ outline-color:#FFFFFF !important; }
.cs-cc-settings.cs-cc-settings--on-light{ color:#535353 !important; }              /* 7.4:1 on the landers' white footer strip */


/* Footer "Cookie policy" link shares the settings-link look (colour chosen by cs-consent.js). */
a.cs-cc-settings, a.cs-cc-settings:visited{ display:inline !important; }
/* /cookie-policy page: cookie table + "Cookie settings" button (Cybersalt 2026-10-08). Lives here, not in the
   TCCK template, so it survives a regenerate. Table scrolls sideways inside its own box on narrow phones. */
.cs-cookie-table-wrap{ overflow-x:auto; -webkit-overflow-scrolling:touch; margin:0 0 1em; }
.cs-cookie-table{ width:100%; min-width:560px; border-collapse:collapse; font-size:15px; line-height:1.4; }
.cs-cookie-table caption{ text-align:left; font-weight:700; padding:0 0 6px; color:#333333; }
.cs-cookie-table th, .cs-cookie-table td{ border:1px solid #CCCCCC; padding:8px 10px; text-align:left; vertical-align:top; color:#333333; }
.cs-cookie-table th{ background:#F2F2F2; font-weight:700; }
.cs-cookie-table code{ font-size:14px; background:none; color:#333333; }
.cs-cc-openbtn{ display:inline-block; margin:0 0 0 4px; min-height:44px; padding:10px 18px; border:2px solid #007FA9; border-radius:3px;
	background:#007FA9; color:#FFFFFF; font:500 15px/1.2 Roboto, Arial, sans-serif; cursor:pointer; }
.cs-cc-openbtn:hover{ background:#00618A; border-color:#00618A; }
.cs-cc-openbtn:focus-visible{ outline:3px solid #B35900; outline-offset:2px; }
