/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */
@import url('https://fonts.googleapis.com/css2?family=Figtree:wght@400;500;600;700&display=swap');
@media screen {
	
	body {
		font-family: 'Figtree', sans-serif;
		font-size:16px;*/
		line-height:140%;
		background-color:#052a3c;
	}
	
	.serif {
		font-family:adelle,serif;
		font-weight:500;
	}
	
	.site_maxwidth {
		background-color:#fff;
		overflow:hidden;
	}
	
	.box_button {
		border-radius:69px;
	}
	
	.box_button.lightblue {
		background-color:#71cfec;
	}
	
	.box_button.outline.grey {
		color:#8fa8b5;
		border-color:#8fa8b5;
	}
	
	.page_headline {
		/*font-family:adelle,serif;
		font-weight:500;*/
		color:#052a3c;
	}
  
  .page_headline.not_in_banner {
    font-weight: 800;
  }
	
	.page_subline {
		font-size:1.1em;
		line-height:130%;
	}
	
	#page_banner {
		position:relative;
		z-index:10;
		background-color:#052a3c;
		background:linear-gradient(180deg, #71CFEC 0%, #00264F 100%);
		text-align:center;
	}
  
  #page_banner .strongerfuture_policies_heading img{
    width: 700px;
    max-width: 80%;
    margin: -30px 0 10px 0;
    transition-duration: .3s;
  }
  
  #page_banner .strongerfuture_policies_heading img:hover{
    transform: scale(1.02);
  }

	#page_banner .header_spacer {
		/*margin-bottom:10vh;*/
	}
	
	#page_banner .bg {
		mix-blend-mode:luminosity;
	}
	
	#page_banner .overlay {
		background-color:#71cfec;
		background:linear-gradient(180deg, #71cfec 0%, #00264f 100%);
		opacity:0.9;
	}
	
	#page_banner .page_headline {
		color:#fff;
		font-weight: 800;
		text-transform: uppercase;
	}
	
	/* -------- */
	
	.video_box {
		position:relative;
		display:block;
		padding-top:56%;
		background-color:#ddd;
		border-radius:8px;
		overflow:hidden;
	}
	
	.video_box .inner {
		position:absolute;
		top:0;
		right:0;
		bottom:0;
		left:0;
		display:flex;
		justify-content:center;
		align-items:center;
	}
	
	.video_box .video {
		position:absolute;
		width:100%;
		height:100%;
		object-fit:cover;
	}
	
	.video_box .video_cover {
		position:absolute;
		width:100%;
		height:100%;
		object-fit:cover;
	}
	
	.video_box .overlay {
		position:absolute;
		top:0;
		right:0;
		bottom:0;
		left:0;
		opacity:0;
		background-color:#fff;
		mix-blend-mode:overlay;
	}
	
	.video_box .icon {
		position:relative;
		width: 25px;
    	height: 25px;
    	background: #299ccb;
		padding: 25px;
		border-radius: 50%;
    	box-shadow: 2px 2px 10px #0000007d;
		opacity:0.75;
	}
  
	.video_box .icon img{
		width: 100%;
		height: 100%;
		object-fit: contain;
		margin-left: 2px;
	}
		
	/* ---------------- header ---------------- */
	
	.header_wrap {
		position:relative;
		z-index:100;
	}
	

	
	.header_wrap.absolute {
		position:absolute;
		top:0;
		right:0;
		left:0;
	}
	
	#header {
		position:relative;
		display:flex;
		height:96px;
		background-color:#009fc6;
		background-image:url('/images/site_2022/menu_bg.jpg');
		background-size:cover;
		background-position:center center;
		padding:0 16px;
		color:#fff;
	}
		
	.header_wrap.absolute #header {
		background-color:transparent;
		background:transparent;
	}
	
	.header_spacer {
		height:250px;
	}
	
	#header a {
		color:#fff;
	}
	
	#header .header_logo {
		position:relative;
		z-index:10;
		display:flex;
		justify-content:space-between;
		align-items:center;
		width:100%;
	}
	
	#header .header_logo .logo {
		
	}
	
	#header .header_logo .logo img {
		width:auto;
		height:64px;
		vertical-align:middle;
	}
	
	#header .header_logo .nav_open {
		flex:0 0 48px;
		padding:8px;
		margin-right:-8px;
		text-align: right;
	}
	
	#header .header_logo .nav_open img {
		width:30px;
		height:auto;
		vertical-align:middle;
	}
	
	#header .header_nav {
		position:fixed;
		z-index:20;
		top:0;
		right:0;
		left:0;
		bottom:0;
		visibility:hidden;
		transition:visibility 0s 0.4s;
	}
	
	#header.open .header_nav {
		visibility:visible;
		transition:visibility 0s 0s;
	}
	
	#header .header_nav .bg {
		position:absolute;
		z-index:10;
		top:0;
		right:0;
		left:0;
		bottom:0;
		background-color:#157ca5;
		opacity:0;
		transition:opacity 0.2s 0.2s;
	}
	
	#header.open .header_nav .bg {
		opacity:1;
		transition:opacity 0.2s 0s;
	}
	
	#header .header_nav .fg {
		position:relative;
		z-index:20;
		opacity:0;
		transition:opacity 0.2s 0s;
	}
	
	#header.open .header_nav .fg {
		opacity:1;
		transition:opacity 0.2s 0.2s;
	}
	
	#header .header_nav .top {
		display:flex;
		justify-content:flex-end;
		align-items:center;
		height:96px;
		padding:0 16px;
		text-align:right;
		opacity:0;
		transition:opacity 0s 0.4s;
	}
	
	#header.open .header_nav .top {
		opacity:1;
		transition:opacity 0.2s 0.6s;
	}
	
	#header .header_nav .top .nav_close {
		padding:8px;
		margin-right:-8px;
		text-align:center;
	}
	
	#header .header_nav .top .nav_close img {
		width:auto;
		height:24px;
		vertical-align:middle;
	}
	
	#header .header_nav .nav {
		display:flex;
		flex-direction:column;
		transform:translateY(16px);
		transition:transform 0s 0.4s;
		text-align:right;
	}
	
	#header.open .header_nav .nav {
		transform:translateX(0);
		transition:transform 0.2s 0.2s;
	}
	
	#header .header_nav .nav .item {
		display:block;
		padding:8px 16px;
		text-decoration:none;
		text-transform:uppercase;
		font-size:1.3em;
		font-weight:700;
		line-height:110%;
		letter-spacing:0.02em;
	}
	
	#header .header_nav .nav .item.current {
		color:#ffdd00;
	}
	
	#header .header_nav .nav .item.highlight {
		
	}
	
	#header .header_nav .nav .item.highlight img{
		height: 16px;
    width: auto;
    padding: 0 6px;
		margin-top: 1px;
	}
	
	#header .header_nav .nav .item.icon img {
		width:auto;
		height:auto;
		max-width:24px;
		max-height:24px;
		vertical-align:middle;
	}
	
	/* ---------------- footer ---------------- */
	
	#footer {
		background-color:#052a3c;
		color:#fff;
	}
	
	#footer a {
		color:#fff;
	}
	
	#footer .footer_top .cols {
		display:flex;
		flex-direction:column;
	}
	
	#footer .footer_top .cols .col {
		display:flex;
		box-sizing:border-box;
	}
	
	#footer .footer_top .col_candidate {
		margin:0 0 24px 0;
		border:2px solid #1c455b;
		border-radius:16px;
	}
	
	#footer .footer_top .col_candidate .headline {
		font-size:1.4em;
		line-height:120%;
		margin:0 0 12px 0;
	}
	
	#footer .footer_top .col_candidate.empty {
		padding:24px;
	}
	
	#footer .footer_top .col_candidate.empty .headline {
		color:#30b6c1;
	}
	
	#footer .footer_top .col_candidate .actions {
		margin:16px 0 0 0;
	}
	
	#footer .footer_top .col_candidate.has_person {
		
	}
	
	#footer .footer_top .col_candidate.has_person .inner {
		display:flex;
		flex-direction:column;
	}
	
	#footer .footer_top .col_candidate.has_person .image {
	
	}
	
	#footer .footer_top .col_candidate.has_person .image .cutout {
		height:128px;
		width:auto;
		vertical-align:bottom;
	}
	
	#footer .footer_top .col_candidate.has_person .text {
		margin:0;
		padding:24px;
		box-sizing:border-box;
		flex:1 1 auto;
	}
	
	#footer .footer_top .col_candidate.has_person .text .headline {
		margin:0 0 4px 0;
		font-weight: 600;
	}
	
	#footer .footer_top .col_candidate.has_person .text .subline {
		margin:4px 0 0 0;
		color:#30b6c1;
	}
	
	#footer .footer_top .col_liberal .inner {
		display:flex;
		flex-direction:column;
	}
	
	#footer .footer_top .col_liberal .logo {
		flex:0 0 64px;
		widht:64px;
		height:64px;
		margin:0 0 16px 0;
	}
	
	#footer .footer_top .col_liberal .logo img {
		width:auto;
		height:auto;
		max-width:64px;
		max-height:64px;
		vertical-align:top;
	}
	
	#footer .footer_top .col_liberal .text {
		line-height:130%;
	}
	
	#footer .footer_bot {
		font-size:0.9em;
		line-height:110%;
		padding:0 0 16px 0;
	}
	
	/* ---------------- home ---------------- */
	
	#home_feature {
		position:relative;
		color:#fff;
		overflow: hidden;
	}
	
	#home_feature a {
		color:#fff;
	}
	
	#home_feature .panel_maxwidth {
		max-width:1280px;
	}
	
	/*#home_feature .bg {
		position:absolute;
		top:0;
		right:0;
		bottom:0;
		left:0;
		z-index:10;
		background:linear-gradient( 340deg, #081d38 0%, #193961 20%, #0e93c5 80%, #00c3e9 100% );
	}*/
	/*
	#home_feature .bg .video {
		object-fit:cover;
		width:100%;
		height:100%;
		mix-blend-mode:luminosity;
		opacity:0.25;
	}*/
		
	#home_feature .bg .video_iframe{
		position:absolute;
		z-index:15;
		width: 100%;
		height: 100%;
		opacity: 1.0;
		mix-blend-mode:multiply;
	}
	
	#home_feature .bg .video_poster {
		position:absolute;
		z-index:10;
		height: 60vw;
		min-height: 100vh;
		min-width: 120vh;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		pointer-events: none;
		background-size:cover;
		background-position:center center;
	}
		
	#home_feature .bg .video_iframe iframe{
		position: absolute;
		z-index:20;
		height: 60vw;
		min-height: 100vh;
		min-width: 260vh;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		pointer-events: none;
		animation: fadeInAnimation ease 3s;
		animation-iteration-count: 1;
		animation-fill-mode: forwards;
	}
	
	#home_feature .bg .shape {
		position:absolute;
		z-index:20;
		top:0;
		right:0;
		bottom:0;
		left:0;
		background-size:cover;
		background-position:right center;
		background-repeat: no-repeat;
	}
	
	#home_feature .header_spacer {
		position:relative;
		z-index:20;
	}
	
	#home_feature .row_top {
		position:relative;
		z-index:30;
		display:flex;
		align-items:top;
		height:100%;
		min-height:256px;
	}
		
	#home_feature .row_top .feature_headline {
		margin:0;
		line-height:110%;
		max-width: 230px;
	}
	
	#home_feature .row_top .feature_headline img {
		width:220px;
	}
	
	#home_feature .row_top .line {
		display:block;
		display:none;
		width:64px;
		height:4px;
		background-color:#30b6c1;
		margin:16px 0 0 0;
	}
	
	#home_feature .row_bot {
		position:relative;
		z-index:30;
		background-color:#052a3c;
		padding:18px 0;
	}
	
	#home_feature .row_bot .panel_maxwidth {
		display:flex;
		flex-direction:column;
		margin:-4px auto;
	}
	
	#home_feature .row_bot .item {
		display:flex;
		font-size:0.9em;
		line-height:120%;
		text-decoration:none;
		margin:4px 0;
	}
	
	#home_feature .row_bot .item.item_vote_early{
		border-bottom: 2px solid #25b9c9;
		padding-bottom: 10px;
		margin-bottom: 10px;
	}
	
	#home_feature .row_bot .item .icon {
		flex:0 0 16px;
		width:16px;
		margin:0 8px 0 0;
	}
	
	#home_feature .row_bot .item .icon img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
	
	#home_feature .row_bot .item .text {
		
	}
	
	#home_feature .row_headshot {
		position:absolute;
		z-index:20;
		top:0;
		right:2%;
		bottom:0;
		width:50%;
	}
	
	#home_feature .row_headshot img {
		position:absolute;
		bottom:0;
		width:auto;
		height:80%;
	}
	
	#home_key {
		position:relative;
	}
	
	#home_key .boxes {
		position:relative;
		display:flex;
		flex-direction:column;
	}
	
	#home_key .boxes .box {
		position:relative;
		display:flex;
		justify-content:center;
		align-items:center;
		text-decoration:none;
		text-align:center;
		overflow: hidden;
	}
	
	#home_key .boxes .box:first-child {
		border-bottom:1px solid #ddd;
	}
	
	#home_key .boxes .box .bg {
		position:absolute;
		z-index:10;
		top:0;
		right:0;
		bottom:0;
		left:0;
		background-color:#fff;
	}
	
	#home_key .boxes .box .bg video {
		position:relative;
		z-index:10;
		object-fit:cover;
		width:100%;
		height:100%;
		opacity:0;
		/* mix-blend-mode:luminosity; */
	}
	
	#home_key .boxes .box .bg .video_iframe {
    position: relative;
    z-index: 10;
    object-fit: cover;
    width: 100%;
    height: 100%;
    opacity: 0;
	}
	
	#home_key .boxes .box .bg .video_iframe iframe{
	width: 100%;
    height: 56.25vw;
    min-height: 100vh;
    min-width: 177.77vh;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    pointer-events: none;
	}
	
	#home_key .boxes .box .bg .overlay {
		position:absolute;
		z-index:5;
		top:0;
		right:0;
		bottom:0;
		left:0;
		background-color:#71CFEC;
		/* background-color:#052a3c; */
		opacity:0;
	}
	
	#home_key .boxes .box .fg {
		position:relative;
		z-index:20;
		padding:48px 32px;
	}
	
	#home_key .boxes .box .tick{
		width: 35px;
    height: 35px;
    margin: 0 auto 25px;
		background-image: url(https://2022.saliberal.org.au/images/site_2022/icon_homebox_tick_blue.svg);
		background-size: contain;
    background-repeat: no-repeat;
    background-position: 50% 50%;
	}
	
	#home_key .boxes .box .headline {
		color:#71cfec;
		margin:0;
		font-size: 1.2em;
		line-height:100%;
	}

	
	#home_key .boxes .box .line {
		width:96px;
		height:4px;
		background-color:#30b6c1;
		margin:16px auto 0 auto;
	}
	
	#home_values {
		position:relative;
		z-index:10;
		background-color:#999;
		color:#fff;
	}
	
	#home_values .bg {
		position:absolute;
		z-index:10;
		top:0;
		right:0;
		bottom:0;
		left:0;
	}
	
	#home_values .bg .img {
		position:relative;
		z-index:10;
		object-fit:cover;
		object-position:center center;
		width:100%;
		height:100%;
	}
	
	#home_values .bg .overlay {
		position:absolute;
		z-index:20;
		top:0;
		right:0;
		bottom:0;
		left:0;
		background-color:#222;
		opacity:0.75;
	}
	
	#home_values .fg {
		position:relative;
		z-index:20;
		display:flex;
		align-items:center;
		min-height:320px;
	}
	
	#home_values .fg .panel_maxwidth {
		max-width:1280px;
		width:80%;
	}
	
	#home_values .fg .box {
		max-width:384px;
		margin:0 0 0 auto;
	}
	
	#home_values .fg .headline {
		margin:0 0 12px 0;
		line-height:100%;
	}
	
	#home_values .fg .subline {
		margin:12px 0;
		line-height:130%;
	}
	
	#home_values .fg .actions {
		margin:12px 0 0 0;
	}
	
	#home_candidates {
		position:relative;
		z-index:30;
	}
	
	#home_candidates .panel_maxwidth {
		padding-top: 50px;
	}
	
	#home_candidates .cols {
		display:flex;
		flex-direction:column;
	}
	
	#home_candidates .col_image {
		position:relative;
		flex:0 0 160px;
		margin-bottom:16px;
	}
	
	#home_candidates .col_image .cutout {
		bottom: 0;
		height: auto;
		width: auto;
		max-width: 100%;
    max-height: 300px;
    object-fit: contain;
	}
	
	#home_candidates .col_text {
		padding: 30px 0 40px;
	}
	
	#home_candidates .headline {
		color:#052a3c;
		line-height:100%;
		margin:0 0 12px 0;
	}
	
	#home_candidates .subline {
		line-height:130%;
		margin:12px 0;
		color:#666;
	}
	
	#home_candidates .actions {
		margin:12px 0 0 0;
	}
	
	#home_candidates .find_candidate {
		
	}
	
	#home_candidates .find_candidate .label {
		display:block;
		font-size:0.9em;
		color:#666;
		margin:0 0 4px 0;
	}
	
	#home_candidates .find_candidate .inputs {
		display:flex;
	}
	
	#home_candidates .find_candidate .postcode {
		height:48px;
		padding:0 12px;
		width:100%;
		flex:1 1 auto;
		box-sizing:border-box;
		border:none;
		border:1px solid #999;
		border-top-left-radius:8px;
		border-bottom-left-radius:8px;
		max-width:128px;
	}
	
	#home_candidates .find_candidate .postcode:focus {
		outline:none;
		box-shadow:none;
		border-color:#666;
	}
	
	#home_candidates .find_candidate .submit {
		flex:0 0 auto;
		padding:0 24px;
		box-sizing:border-box;
		border-top-right-radius:8px;
		border-bottom-right-radius:8px;
		border-top-left-radius:0;
		border-bottom-left-radius:0;
	}
	
	#home_vision {
		position:relative;
		z-index:10;
		background-color:#999;
		color:#fff;
	}
	
	#home_vision .bg {
		position:absolute;
		z-index:10;
		top:0;
		right:0;
		bottom:0;
		left:0;
	}
	
	#home_vision .bg .img {
		position:relative;
		z-index:10;
		object-fit:cover;
		object-position:center top;
		width:100%;
		height:100%;
	}
	
	#home_vision .bg .overlay {
		position:absolute;
		z-index:20;
		top:0;
		right:0;
		bottom:0;
		left:0;
		background-color:#222;
		opacity:0.75;
	}
	
	#home_vision .fg {
		position:relative;
		z-index:20;
		display:flex;
		align-items:center;
		min-height:320px;
	}
	
	#home_vision .fg .panel_maxwidth {
		max-width:1280px;
		width:80%;
	}
	
	#home_vision .fg .box {
		max-width:384px;
		margin:0 0 0 auto;
	}
	
	#home_vision .fg .headline {
		margin:0 0 12px 0;
		line-height:100%;
	}
	
	#home_vision .fg .subline {
		margin:12px 0;
		line-height:130%;
	}
	
	#home_vision .fg .actions {
		margin:12px 0 0 0;
	}
	
	/* ---------------- policies ---------------- */
	
	#t22_policy_feature .panel_maxwidth,
	#t22_policy_main .panel_maxwidth,
	#t22_policy_extra .panel_maxwidth {
		max-width:1280px;
	}
	
	#t22_policy_extra .blue_shade{
    position: absolute;
    width: 100%;
    height: 100%;
    background: #052a3c;
	}
	
	#t22_policy_extra .t22_pe_b1{
		opacity: .25;
	}
	
	#t22_policy_feature {
		position:relative;
		background:linear-gradient( 340deg, #081d38 0%, #193961 20%, #0e93c5 80%, #00c3e9 100% );
		color:#fff;
	}
			
	#t22_policy_feature .bg {
		position:absolute;
		z-index:10;
		top:0;
		right:0;
		bottom:0;
		left:0;
		background:linear-gradient( 340deg, #081d38 0%, #193961 20%, #0e93c5 80%, #00c3e9 100% );
	}
	
	#t22_policy_feature .bg .overlay {
		position:absolute;
		z-index:15;
		top:0;
		right:0;
		bottom:0;
		left:0;
		background:linear-gradient( 180deg, rgba(12,53,81,1) 0%, rgba(12,53,81,0) 75% );
		opacity: .6; /*for coloured bg*/
	}
	
	#t22_policy_feature .bg .img {
		position:relative;
		z-index:10;
		object-fit:cover;
		width:100%;
		height:100%;
		color:transparent;
		/*mix-blend-mode:luminosity;
		opacity:0.5;*/
	}
	
	#t22_policy_feature .bg .shape {
		position:absolute;
		z-index:20;
		top:0;
		bottom:0;
		left:0;
		width:50%;
		background-size:cover;
		background-position:right center;
		background-repeat: no-repeat;
	}
	
	#t22_policy_feature .fg {
		position:relative;
		z-index:20;
		display:flex;
		align-items:center;
		min-height:192px;
	}
	
	#t22_policy_feature .headline {
		margin:0;
		line-height:100%;
		max-width:1400px;
	}
	
	#t22_policy_feature .line {
		display:block;
		width:64px;
		height:4px;
		background-color:#30b6c1;
		margin:16px 0 0 0;
	}
	
	/* -------- */
		
	#t22_policy_main .section {
		margin:24px 0;
	}
	
	#t22_policy_main .section:first-child {
		margin-top:0;
	}
	
	#t22_policy_main .section:last-child {
		margin-bottom:0;
	}
	
	#t22_policy_main .section_headline {
		font-size:1.4em;
		color:#052a3c;
		color: #30b6c1;
		margin:0 0 12px 0;
		display: flex;
    align-items: center;
	}
	
	#t22_policy_main .section_headline img.icon{
    width: 15px;
    height: 15px;
    padding: 7px;
    background: #30b6c1;
    margin-right: 10px;
	}
	
	#t22_policy_main p {
		line-height:140%;
	}
	
	#t22_policy_main ul,
	#t22_policy_main ol {
		padding:0 0 0 16px;
		margin:1em 0;
	}
	
	#t22_policy_main li {
		margin:8px 0;
		line-height:130%;
	}
	
	#t22_policy_main table {
		width:100%;
		margin-bottom:16px;
	}
	
	#t22_policy_main table td {
		border-bottom:1px solid #ddd;
		padding:8px;
	}
	
	#t22_policy_main .cols {
		display:flex;
		flex-direction:column-reverse;
	}
	
	#t22_policy_main .col_left {
		
	}
	
	#t22_policy_main .col_left .policy_gallery{
		display: flex;
    flex-wrap: wrap;
		margin: 0 -.5%;
	}
	
	#t22_policy_main .col_left .policy_gallery a{
		position: relative;
		overflow: hidden;
    display: inline-block;
		flex: 0 0 49%;
    height: auto;
		padding-bottom: 35%;
    margin: .5%;
		border-radius: 5px;
	}
	
	#t22_policy_main .col_left .policy_gallery a img{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
		transition-duration: .3s;
	}
	
	#t22_policy_main .col_left .policy_gallery a:hover img{
		transform: scale(1.05);
	}
	
	#t22_policy_main .col_right {
		margin:0 0 32px 0;
	}
	
	#t22_policy_main .col_right .section {
		padding:24px;
		margin: 0 0 30px;
		border:1px solid #ccc;
		border-radius:16px;
	}
	
	#t22_policy_main .col_right .section_headline{
		margin: 0 0 36px 0;
	}
	
	#t22_policy_main .col_right .box_button {
		margin-top:8px;
	}
	
	#t22_policy_main .col_right #policy_snapshot_admin_only{

	}
	
	.policy_popup{
		background-color: #f9f9f9;
		width: 600px;
		max-width: 90%;
		margin: 50px 0 !important;
	}
	
	.policy_popup > h2{
		color: #0c3551;
		margin: 0;
	}
	
	.policy_popup .candidates{
		margin: 20px 0 0;
	}
	
	.policy_popup .candidates > a{
		background-color: #ffffff;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		margin: 0 0 20px;
		text-decoration: none;
		word-break: break-word;
		outline: none !important;
	}
	
	.policy_popup .candidates > a:last-of-type{
		margin-bottom: 0;
	}
	
	.policy_popup .candidates > a .photo{
		background-color: #f1f1f1;
		position: relative;
		flex: 0 0 25%;
		padding-bottom: 25%;
		overflow: hidden;
	}
	
	.policy_popup .candidates > a .photo img{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	
	.policy_popup .candidates > a .content{
		flex: 0 0 70%;
	}
	
	.policy_popup .candidates > a .content > div{
		padding: 15px 8%;
    width: 100%;
	}
	
	.policy_popup .candidates > a .content > div h3{
		color: #0c3551;
		margin: 0 0 5px;
		transition-duration: .1s;
	}
	
	.policy_popup .candidates > a .content > div p{
		margin: 0;
	}
	

			
	.policy_popup .candidates > a:hover .content > div h3{
		color: #30b6c1;
	}
	
	
	/* -------- */
	
	#t22_policy_extra {
		display:flex;
		align-items:center;
		position:relative;
		background-color:#999;
		color:#fff;
		min-height:256px;
	}
	
	#t22_policy_extra .bg {
		position:absolute;
		z-index:10;
		object-fit:cover;
		width:100%;
		height:100%;
		color:transparent;
	}
	
	#t22_policy_extra .panel_maxwidth {
		position:relative;
		z-index:20;
	}
	
	#t22_policy_extra .text {
		max-width:768px;
		margin:0 0 0 auto;
	}
	
	#t22_policy_extra .text .large {
		line-height:140%;
		text-shadow: 2px 2px 10px #00000024;
    padding: 8% 10%;
    background: #052a3c;
	}
	
	/* -------- */
	
	#t22_policy_related {
		background-color:#30b6c1;
		color:#fff;
	}
	
	#t22_policy_related .panel_top {
		margin:0 0 24px 0;
	}
	
	#t22_policy_related .panel_top .section_headline {
		line-height:110%;
	}
	
	/* -------- */
	
	.policy_list.small_boxes {
		display:flex;
		flex-direction:column;
		margin:-8px;
	}
	
	.policy_list.small_boxes .item.small_box {
		position:relative;
		color:#fff;
		margin:8px;
	}
	
	.policy_list.small_boxes .item.small_box .inner {
		padding-top:100%;
	}
	
	.policy_list.small_boxes .item.small_box .bg {
		position:absolute;
		z-index:10;
		top:0;
		right:0;
		bottom:0;
		left:0;
		background-color:#052a3c;
		background-color:#3ba0a8;
	}
	
	.policy_list.small_boxes .item.small_box .bg .img {
		position:relative;
		z-index:10;
		object-fit:cover;
		width:100%;
		height:100%;
		color:transparent;
	}
	
	.policy_list.small_boxes .item.small_box .bg .overlay {
		position:absolute;
		z-index:20;
		top:0;
		right:0;
		bottom:0;
		left:0;
		background-color:rgba(5,42,60,0.5);
		background:linear-gradient(0deg, rgba(5,42,60,1) 0%, rgba(5,42,60,0) 75% );
	}
	
	.policy_list.small_boxes .item.small_box .fg {
		position:absolute;
		z-index:20;
		right:0;
		bottom:0;
		left:0;
		padding:16px;
	}
	
	.policy_list.small_boxes .item.small_box .headline {
		line-height:120%;
	}
	
	/* -------- */
	
	.panel_page_policy_list {
		background-color:#f5f5f5;
	}
	
	.policy_list.large_boxes {
		display:flex;
		flex-direction:column;
		margin:-8px;
	}
	
	.policy_list.large_boxes .item {
		position:relative;
		display:flex;
		flex-direction:column;
		margin:8px;
		background-color:#fff;
		border-radius:8px;
		overflow:hidden;
	}
  
  	
	.policy_list.large_boxes .item.hide {
		display:none;
	}
	
	.policy_list.large_boxes .item.keywordHide{
		display:none;
	}
	
	.policy_list.large_boxes .item .image {
		position:relative;
		flex:0 0 auto;
		height:192px;
		background-color:#ddd;
		text-decoration:none;
	}
	
	.policy_list.large_boxes .item .image img {
		position:relative;
		z-index:10;
		object-fit:cover;
		width:100%;
		height:100%;
		color:transparent;
	}
	
	.policy_list.large_boxes .item .image .overlay {
		position:absolute;
		z-index:20;
		top:0;
		right:0;
		bottom:0;
		left:0;
		opacity:0;
		background-color:rgba(255,255,255,0.1);
		mix-blend-mode:overlay;
	}
	
	.policy_list.large_boxes .item .text {
		display:flex;
		flex-direction:column;
		justify-content:space-between;
		flex:1 1 auto;
		padding:16px;
	}
	
	.policy_list.large_boxes .item .text .headline {
		font-size:1.4em;
		line-height:120%;
		margin:0;
	}
	
	.policy_list.large_boxes .item .text .headline a {
		color:#052a3c;
		text-decoration:none;
	}
	
	.policy_list.large_boxes .item .text .tags {
		margin:12px 0;
    line-height: 100%;
	}
	
	.policy_list.large_boxes .item .text .tags .tag {
		display:inline-block;
		padding:4px;
		text-decoration:none;
		color:#222;
		border-radius:4px;
	}
	
	.policy_list.large_boxes .item .text .tags .tag.highlighted {
		background-color:#c1edf0;
		padding:4px 8px;
	}
	
	.policy_list.large_boxes .item .text .tags .tag.highlighted.electorate {
		background-color:#f9e9bb;
	}
	
	.policy_list.large_boxes .item .text .tags .divider {
		color:#ccc;
	}
	
	.policy_list.large_boxes .item .text .text_bot {
		margin:12px 0 0 0;
	}
	
	.policy_list.large_boxes .empty {
		padding:16px;
		margin:8px;
		border:1px solid #ddd;
		background-color:#eee;
	}
	
	/* -------- */
	
	body[data-entry-id='3006'] .site_maxwidth {
		background-color:#f5f5f5;
	} 
	
	.panel_page_policy_list {
		position:relative;
		z-index:20;
	}
	
	.policy_filter {
		position:relative;
		z-index:30;
		background-color:transparent;
		padding:16px 0 0 0;
	}
	
	.policy_filter .panel_maxwidth {
    max-width: 1200px;
	}
	
	.policy_filter .row_delivered {
		margin:0 0 16px 0;
	}
	
	.policy_filter .delivered_options {
		display:flex;
		flex-wrap: wrap;
		background-color:#fff;
		border-radius:8px;
		overflow:hidden;
		box-shadow:2px 2px 8px rgba(0,0,0,0.1);
    	padding: 2%;
		justify-content: center;
	}
	
	.policy_filter .delivered_options .option {
    flex: 0 0 48%;
    flex: 0 0 31.333%;
    margin: 1%;
		padding:15px 0;
		background-color:#f9f9f9;
		color:#052a3c;
		text-align: left;
		text-decoration:none;
		font-size:12px;
		line-height:100%;
		font-weight:600;
		border: none;
		border-radius: 5px;
		overflow: hidden;
	}
	
	.policy_filter .delivered_options .option.hidden{
		display: none;
	}
	
	.policy_filter .delivered_options .option > div{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    text-align: center;
	}
	
	.policy_filter .delivered_options .option > div img{
    width: 25px;
    height: 25px;
    padding: 8px;
    border-radius: 50%;
    display: inline-block;
    margin: 0 auto 10px;
	}
	
	.policy_filter .delivered_options .option > div span{
		flex: 0 0 100%;
    font-weight: 600;
    font-size: 12px;
	}
	
	.policy_filter .delivered_options .option:active {
		box-shadow:inset 2px 2px 32px rgba(0,0,0,0.1);
	}
	
	.policy_filter .delivered_options .option:last-child {
		border:none;
	}
	
	.policy_filter .delivered_options .option.selected {
		background-color:#9edadb;
		background-color: #052a3c;
		color: #fff;
	}
	
	.policy_filter .row_search {
		position:relative;
	}
	
	.policy_filter .row_search .actions {
		display:flex;
		flex-direction:column;
	}
	
	.policy_filter .row_search .action {
		position:relative;
		display:flex;
		align-items:center;
		margin:8px 0 0 0;
		padding:12px 16px;
		border-radius:8px;
		background-color:#e5ebeb;
		color:#222;
		text-decoration:none;
		font-weight:700;
		line-height:110%;
	}
	
	.policy_filter .row_search .action:active {
		box-shadow:inset 2px 2px 32px rgba(0,0,0,0.1);
	}
	
	.policy_filter .row_search .action .icon {
		flex:0 0 auto;
		width:16px;
		margin:0 8px 0 0;
	}
	
	.policy_filter .row_search .action .icon img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
		vertical-align:middle;
	}
	
	.policy_filter .row_search .action .clear {
		position:absolute;
		right:0;
		display:none;
		padding:12px 16px;
	}
	
	.policy_filter .row_search .action .clear.show {
		display:block;
	}
	
	.policy_filter .row_search .action.action_topic input{
    background: none;
    border: none;
    padding: 5px;
		width: 90%;
		outline: none !important;
	}
	
	.policy_filter .row_search .popout_bg {
		position:fixed;
		z-index:20;
		top:0;
		right:0;
		bottom:0;
		left:0;
		display:none;
	}
	
	.policy_filter .row_search .popout_bg.show {
		display:block;
	}
	
	.policy_filter .row_search .popout {
		position:relative;
		z-index:30;
		display:none;
		margin:8px 0 0 0;
		padding:24px;
		border-radius:8px;
		background-color:#d1e0e1;
	}
	
	.policy_filter .row_search .popout.show {
		display:block;
	}
	
	.policy_filter .row_search .popout .label {
		display:block;
		margin:0 0 8px 0;
		font-weight:700;
	}
	
	.policy_filter .row_search .popout_location .input {
		box-sizing:border-box;
		width:100%;
		border:1px solid #ccc;
		background-color:#fff;
		border-radius:4px;
		padding:0 12px;
		height:40px;
	}
	
	.policy_filter .row_search .popout_location .input:focus {
		outline:4px rgba(100,100,100,0.25);
		box-shadow:none;
		border-color:#666;
	}
	
	.policy_filter .row_search .popout_location .suggestions_bg {
		position:fixed;
		z-index:20;
		top:0;
		right:0;
		bottom:0;
		left:0;
		display:none;
		background-color:#ccc;
		opacity:0.1;
	}
	
	.policy_filter .row_search .popout_location .suggestions_bg.show {
		display:block;
	}
	
	.policy_filter .row_search .popout_location .suggestions {
		position:relative;
		z-index:30;
		height:0;
	}
	
	.policy_filter .row_search .popout_location .suggestions .suggestion {
		display:block;
		padding:8px 12px;
		background-color:#fff;
		text-decoration:none;
		color:#222;
		line-height:110%;
	}
	
	.policy_filter .row_search .popout_location .suggestions .suggestion:first-child {
		padding-top:12px;
		border-top-right-radius:4px;
		border-top-left-radius:4px;
	}
	
	.policy_filter .row_search .popout_location .suggestions .suggestion:last-child {
		padding-bottom:12px;
		border-bottom-right-radius:4px;
		border-bottom-left-radius:4px;
	}
	
	.policy_filter .row_search .popout_topic .topics {
		margin:-2px;
	}
	
	.policy_filter .row_search .popout_topic .topics .topic {
		display:inline-block;
		padding:8px;
		margin:2px;
		border-radius:4px;
		background-color:#fff;
		font-weight:700;
		line-height:100%;
		text-decoration:none;
	}
	
	.policy_filter .row_search .popout_topic .label.all_topics{
		display: none;
	}
	
	.policy_filter .row_search .popout_topic .label.all_topics.show{
		display: block;
	}
	
	.policy_filter .row_search .popout_topic .topics.all_topics .topic{
		display: none;
	}
	
	.policy_filter .row_search .popout_topic .topics.all_topics .topic.show{
		display: inline-block;
	}
	
	.policy_filter .row_search .popout_topic .topics .topic.selected {
		background-color:#529a9b;
		color:#fff;
	}
	
	.policy_filter .row_search .popout_topic .topics .topic:active {
		box-shadow:inset 2px 2px 16px rgba(0,0,0,0.1);
	}
			
	/* ---------------- candidates ---------------- */
	
	body[data-entry-id='3009'] .site_maxwidth {
		background-color:#f5f5f5;
	}
	
	#find_candidate {
		position:relative;
		z-index:30;
		min-height:100vh;
	}
	
	#find_candidate .panel_filter {
		padding:32px 0 0 0;
	}
	
	#find_candidate .panel_filter .panel_maxwidth {
		max-width:768px;
	}
	
	#find_candidate .panel_list .panel_maxwidth {
		max-width:1280px;
	}
	
	#find_candidate .page_headline {
		color:#052a3c;
		margin:0 0 16px 0;
	}
	
	#find_candidate .candidate_filter {
		margin:0;
		padding:16px;
		background-color:#d1e0e1;
		background-color: #052a3c;
		border-radius:8px;
	}
	
	#find_candidate .candidate_filter .col {
		padding:0;
	}
	
	#find_candidate .candidate_filter label {
		display:block;
		font-weight:700;
		line-height:110%;
		margin-bottom:8px;
		color:#052a3c;
		color: #fff;
		margin-bottom: 15px;
	}
	
	#find_candidate .candidate_filter #search_field {
		height:48px;
		padding:0 12px;
		border-radius:8px;
	}
	
	#find_candidate .candidate_filter .suggestions {
		position:relative;
	}
	
	#find_candidate .candidate_filter .suggestions .bg {
		position:fixed;
		z-index:100;
		top:0;
		right:0;
		bottom:0;
		left:0;
		display:none;
	}
	
	#find_candidate .candidate_filter .suggestions.has_suggestions .bg {
		display:block;
	}
	
	#find_candidate .candidate_filter .suggestions .items {
		position:absolute;
		top:0;
		right:0;
		left:0;
		z-index:110;
		background-color:#fff;
	}
	
	#find_candidate .candidate_filter .suggestions .suggestion {
		display:block;
		padding:8px 16px;
		text-decoration:none;
	}
	
	#find_candidate .candidate_filter .suggestions .suggestion:first-child {
		padding-top:16px;
	}
	
	#find_candidate .candidate_filter .suggestions .suggestion:last-child {
		padding-bottom:16px;
	}
	
	#find_candidate .team_list .person {
		display:none;
		border-radius:8px;
		overflow:hidden;
		box-shadow:2px 2px 8px rgba(0,0,0,0.1);
	}
	
	#find_candidate .team_list .person.show {
		display:flex;
	}
	
	#find_candidate .team_list .person .long_name {
		font-size:1.4em;
	}
	
	#find_candidate .team_list .person .roles {
		margin-top:8px;
	}
	
	#find_candidate .team_list .person .row_actions {
		margin-top:12px;
    display: flex;
    flex-wrap: wrap;
	}
	
	#find_candidate .team_list .person .row_actions .box_button {
		margin:8px 8px 0 0;
    font-size: 14px;
	}
  
  #find_candidate .team_list .person .row_actions .box_button {
    align-items: center;
  }
  
  #find_candidate .team_list .person .row_actions .box_button .icon {
    display: flex;
    flex: 0 0 auto;
    width: 10px;
    height: 10px;
    margin: 0 12px 0 0;
    background: #30b6c1;
    padding: 10px;
    border-radius: 50%;
  }
  
  #find_candidate .team_list .person .row_actions .box_button .icon img{
    max-width: 100%;
    max-height: 100%;
  }
  
  #find_candidate .team_list .person .row_actions .box_button.add_fav{
    border-radius: 30px !important;
    width: fit-content;
    margin: 10px 0 0 !important;
    padding: 10px 20px;
  }
  
  #find_candidate .team_list .person .row_actions .box_button.add_fav .message_add{
    display: block;
  }
  
  #find_candidate .team_list .person .row_actions .box_button.add_fav .message_saved,
  #find_candidate .team_list .person .row_actions .box_button.add_fav .message_remove{
    display: none;
  }
  
  #find_candidate .team_list .person .row_actions .box_button.add_fav.selected{
    background: #30b6c1;
    color: #fff;
  }
  
  #find_candidate .team_list .person .row_actions .box_button.add_fav.selected .icon{
    background: #00000017;
  }

  #find_candidate .team_list .person .row_actions .box_button.add_fav.selected .message_add{
    display: none;
  }
  
  #find_candidate .team_list .person .row_actions .box_button.add_fav.selected .message_saved{
    display: block;
  }
  
  #find_candidate .team_list .person .row_actions .box_button.add_fav.selected:hover .message_add,
  #find_candidate .team_list .person .row_actions .box_button.add_fav.selected:hover .message_saved{
    
  }
  
  #find_candidate .team_list .person .row_actions .box_button.add_fav.selected:hover .message_remove{

  }
  
	
	#find_candidate .team_list .person .fav {
		position:absolute;
		z-index:30;
		top:0;
		right:0;
		padding:16px;
	}
	
	#find_candidate .team_list .person .readmore {
    color: #fff;
    text-decoration: none;
    text-transform: none;
	}
	
	#find_candidate .team_list .multi {
		display:none;
		flex:1 1 auto;
		width:100%;
		justify-content:center;
		align-items:center;
		padding:16px;
		margin:8px;
		background-color:#ddd;
		background-color:#e1dfd1;
		font-weight:700;
		border-radius:8px;
	}
	
	#find_candidate .team_list .multi .icon {
		flex:0 0 16px;
		width:16px;
		margin:0 12px 0 0;
	}
	
	#find_candidate .team_list .multi .icon img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
		vertical-align:middle;
	}
	
	#find_candidate .team_list .multi .text .icon_external {
		width:12px;
		height:auto;
		margin-right:4px;
	}
	
	#find_candidate .team_list .multi.show {
		display:flex;
	}
	
	#find_candidate .team_list .empty {
		display:none;
		flex:1 1 auto;
		width:100%;
		justify-content:center;
		align-items:center;
		padding:16px;
		margin:8px;
		background-color:#ddd;
		background-color:#e1dfd1;
		font-weight:700;
		border-radius:8px;
	}
	
	#find_candidate .team_list .empty .icon {
		flex:0 0 16px;
		width:16px;
		margin:0 12px 0 0;
	}
	
	#find_candidate .team_list .empty .icon img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
		vertical-align:middle;
	}
	
	#find_candidate .team_list .empty.show {
		display:flex;
	}
	
	/* ---- candidate entry ---- */	
	#t22_candidate {
		position:relative;
		background-color:#eee;
	}
	
	#t22_candidate_feature {
		position:relative;
		display:flex;
		justify-content:center;
		align-items:center;
		border-radius:8px;
		color:#fff;
		background-color:#4d85a0;
		background-size:cover;
		background-position:center center;
		margin:0 0 16px 0;
	}
	
	#t22_candidate_feature .cols {
		display:flex;
		flex-direction:column;
		align-items:center;
	}
	
	#t22_candidate_feature .col_image {
		position:relative;
		z-index:10;
		width:192px;
		height:192px;
		padding:0 16px;
	}
	
	#t22_candidate_feature .col_image .cutout {
		position:absolute;
		bottom:0;
		width:auto;
		height:110%;
	}
	
	#t22_candidate_feature .col_text {
		position:relative;
		z-index:20;
		padding:24px;
		text-align:center;
	}
	
	#t22_candidate_feature .candidate_headline {
		font-size:1em;
		font-weight:500;
		line-height:110%;
	}
	
	#t22_candidate_feature .candidate_headline .name {
		font-weight:500;
		font-size:1.8em;
		line-height:110%;
		margin-bottom:4px;
	}
	
	#t22_candidate_feature .candidate_headline .name strong {
		font-weight:700;
	}
	
	#t22_candidate_feature .candidate_headline .role {
		font-size:1.4em;
		line-height:110%;
		color:#71CFEC;
	}
	
	#t22_candidate_feature .actions {
		display:flex;
		flex-direction:column;
		margin:24px 0 0 0;
	}
	
	#t22_candidate_feature .actions .box_button {
		margin:2px;
	}
	
	#t22_candidate_feature .fav {
		position:absolute;
		top:16px;
		right:16px;
	}
	
	#t22_candidate_feature .branding {
		position:absolute;
		z-index:30;
		top:0;
		left:0;
		padding:16px;
		border-bottom-left-radius:8px;
	}
	
	#t22_candidate_feature .branding .logo {
		width:64px;
		height:auto;
		vertical-align:bottom;
	}
	
	#t22_candidate_ask {
		display:flex;
		justify-content:center;
		align-items:center;
		background-color:#d1e0e1;
		padding:24px;
		border-radius:8px;
		margin:0 0 16px 0;
		text-align:center;
	}
	
	#t22_candidate_ask .inner {
		
	}
		
	#t22_candidate_ask .step_question {
		display:block;
	}
	
	#t22_candidate_ask .step_thanks {
		display:none;
	}
	
	#t22_candidate_ask.done .step_question {
		display:none;
	}
	
	#t22_candidate_ask.done .step_thanks {
		display:block;
	}
	
	#t22_candidate_ask .thanks {
		display:flex;
		font-size:1.1em;
		line-height:110%;
	}
	
	#t22_candidate_ask .thanks .icon {
		flex:0 0 auto;
		width:16px;
		margin:0 8px 0 0;
	}
	
	#t22_candidate_ask .thanks .icon img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
	
	#t22_candidate_ask .thanks .text {
		font-weight:700;
	}
	
	#t22_candidate_ask .question {
		font-size:1.6em;
		font-weight:700;
		line-height:120%;
		margin:0 0 12px 0;
		color:#052a3c;
	}
	
	#t22_candidate_ask .answers {
		display:flex;
		flex-wrap:wrap;
		margin:-4px;
	}
	
	#t22_candidate_ask .answer {
		display:flex;
		justify-content:center;
		flex:1 1 auto;
		margin:4px;
		text-align:center;
	}
	
	#t22_candidate_ask .info {
		margin:12px 0 0 0;
		font-size:0.9em;
		line-height:120%;
		color:#8fa8b5;
	}
	
	#t22_candidate_about .col_actions .video_box {
		margin-bottom:16px;
	}
	
	#t22_candidate_about {
		background-color:#fff;
		border-radius:8px;
		padding:16px;
	}
	
	#t22_candidate_about .cols {
		display:flex;
		flex-direction:column;
	}
	
	#t22_candidate_about .cols .col_actions {
		
	}
	
	#t22_candidate_about .col_actions .long_buttons {
		display:flex;
		flex-direction:column;
		margin:-4px 0;
	}
	
	#t22_candidate_about .col_actions .long_buttons .action {
		position:relative;
		display:flex;
		background-color:#1b4764;
		color:#fff;
		text-decoration:none;
		padding:12px;
		font-weight:700;
		line-height:110%;
		margin:4px 0;
		border-radius:4px;
	}
	
	#t22_candidate_about .col_actions .long_buttons .action.primary {
		background-color:#299ccb;
	}
		
	#t22_candidate_about .col_actions .long_buttons .action .icon {
		position:relative;
		z-index:10;
		flex:0 0 auto;
		width:16px;
		margin:0 8px 0 0;
	}
	
	#t22_candidate_about .col_actions .long_buttons .action .icon img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:160px;
	}
	
	#t22_candidate_about .col_actions .long_buttons .action .text {
		position:relative;
		z-index:10;
	}
	
	#t22_candidate_about .col_actions .long_buttons .action .overlay {
		position:absolute;
		z-index:20;
		top:0;
		right:0;
		bottom:0;
		left:0;
		opacity:0;
		background-color:#fff;
		mix-blend-mode:overlay;
	}
	
	#t22_candidate_about .col_actions .square_buttons {
		display:flex;
		flex-direction:column;
		align-items:center;
		margin:16px 0 0 0;
		padding:16px;
		background-color:#f5f5f5;
		border-radius:4px;
	}
	
	#t22_candidate_about .col_actions .square_buttons .label {
		justify-self:flex-start;
		color:#052a3c;
		margin:0 0 8px 0;
		padding:0 8px;
		font-size:1.2em;
		font-weight:700;
		line-height:110%;
	}
	
	#t22_candidate_about .col_actions .square_buttons .buttons {
		display:flex;
		justify-content:flex-end;
	}
	
	#t22_candidate_about .col_actions .square_buttons .action {
		position:relative;
		display:flex;
		justify-content:center;
		align-items:center;
		width:48px;
		height:48px;
		background-color:#1b4764;
		background-color:#052a3c;
		color:#fff;
		text-decoration:none;
		border-radius:4px;
		margin:0 4px;
		line-height:110%;
	}
	
	#t22_candidate_about .col_actions .square_buttons .action .icon {
		position:relative;
		z-index:10;
		width:auto;
		height:auto;
		max-width:24px;
		max-height:24px;
		vertical-align:middle;
	}
	
	#t22_candidate_about .col_actions .square_buttons .action .overlay {
		position:absolute;
		z-index:20;
		top:0;
		right:0;
		bottom:0;
		left:0;
		opacity:0;
		background-color:#fff;
		mix-blend-mode:overlay;
	}
	
	#t22_candidate_about .col_actions .htv_preview {
		position:relative;
		display:block;
		padding:16px;
		box-shadow:2px 2px 8px rgba(0,0,0,0.2);
		margin:16px 0 0 0;
		border-radius:4px;
	}
	
	#t22_candidate_about .col_actions .htv_preview .htv_img {
		position:relative;
		z-index:10;
		display:block;
		width:100%;
		height:auto;
	}
	
	#t22_candidate_about .col_actions .htv_preview .overlay {
		position:absolute;
		z-index:20;
		top:0;
		right:0;
		bottom:0;
		left:0;
		background-color:#fff;
		opacity:0;
	}
	
	#t22_candidate_about .col_policies {
		margin:32px 0 0 0;
		padding:32px 0 0 0;
		border-top:1px solid #ccc;
	}
	
	#t22_candidate_about .col_policies .group {
		margin:0 0 32px 0;
	}
	
	#t22_candidate_about .col_policies .group:last-child {
		margin:0;
	}
		
	#t22_candidate_about .col_policies .section_headline {
		color:#052a3c;
		font-size:1.6em;
	}
	
	#t22_candidate_about .col_policies .tick_items {
		padding:0;
		margin:8px 0;
	}
	
	#t22_candidate_about .col_policies .tick_items li {
		display:flex;
		list-style:none;
		margin:8px 0;
		font-size:1em;
		line-height:120%;
	}
	
	#t22_candidate_about .col_policies .tick_items li .icon {
		flex:0 0 auto;
		width:16px;
		margin:0 8px 0 0;
	}
	
	#t22_candidate_about .col_policies .tick_items li .icon img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
		margin-top:4px;
	}
	
	#t22_candidate_about .col_policies .tick_items li .text {
		
	}
	
	#t22_candidate_about .col_policies .actions {
		margin:16px 0 0 0;
	}
	
	#t22_candidate_policies {
		padding:24px 0;
	}
	
	#t22_candidate_policies .panel_top {
		margin:0 0 12px 0;
	}
	
	#t22_candidate_policies .section_headline {
		color:#052a3c;
		font-weight:600;
		text-align:center;
	}
	
	/* ---------------- about ---------------- */
	
	#t22_vision_content {
		background: linear-gradient(180deg, #f5f5f5 100%, #ddd 100%);
	}
	
	#t22_vision_content .panel_maxwidth {
    max-width: 860px;
	}
  	
	#t22_vision_content .panel_maxwidth .section_wrapper_content{
    flex: 0 0 100%; 
  }
	
    	
	#t22_vision_content .panel_maxwidth .section_wrapper_photo{
    flex: 0 0 100%; 
    border-radius: 10px;
    background: #fff;
    box-shadow: 2px 2px 10px #0000000f;
    overflow: hidden;
  }
  
  #t22_vision_content .panel_maxwidth .section_wrapper_photo img.photo{
    display: block;
    max-width: 90%;
    margin: 0 auto;
  }
  
  #t22_vision_content .panel_maxwidth .section_wrapper_photo .content {
    background: #042a3c;
    padding: 40px;
    color: #fff;
    height: 100%;
    text-align: center;
  }
	
  #t22_vision_content .panel_maxwidth .section_wrapper_photo .content .name{
    font-size: 30px;
    font-weight: 600;
    margin: 0 0 10px;
  }
  
  #t22_vision_content .panel_maxwidth .section_wrapper_photo .content .role{
    margin: 0 0 20px;
  }
  
  
  
	#t22_vision_content .section_video {
		margin:0 0 32px 0;
	}
	
	#t22_vision_content .page_headline {
		margin:0 0 24px 0;
		/*font-size:1.6em;*/
		line-height:120%;
	}
	
	#t22_vision_content .section_content {

	}
	
	#t22_vision_content .basic_content {
		
	}
	
	#t22_vision_content .basic_content p {
		font-size:1em;
		line-height:150%;
		margin:1em 0;
	}
	
	#t22_vision_content .signoff {
		margin:24px 0;
		padding:24px 0 0;
		border-top:1px solid #ccc;
		font-size:1em;
		line-height:130%;
	}
	
	#t22_vision_content .signoff img.photo {
    display: block;
    width: 260px;
    max-width: 90%;
    margin: 0 auto;
	}
	
	#t22_vision_content .signoff .content{
    background: #e7e7e7;
    padding: 40px 5%;
    border-radius: 8px;
    text-align: center;
	}
	
	#t22_vision_content .signoff .content .name {
		font-weight:700;
	}
	
	#t22_vision_content .signoff .content .role {
		font-style:italic;
		color:#666;
		margin-bottom: 20px;
	}
	
	/* -------- add_fav -------- */
	
	.add_fav {
		display:flex;
		align-items:center;
		color:#fff;
		text-decoration:none;
		overflow:hidden;
		border-radius:24px;
	}
	
	.add_fav .label {
		position:relative;
		z-index:10;
		display:flex;
		justify-content:center;
		align-items:center;
		height:48px;
		padding:0 64px 0 24px;
		margin-right:-48px;
		border-radius:24px;
		background-color:#30b6c1;
		color:#fff;
		font-weight:700;
		line-height:110%;
		opacity:0;
		transform:translateX(100%);
	}
	
	.add_fav .star {
		position:relative;
		z-index:20;
		display:flex;
		flex:0 0 auto;
		width:48px;
		height:48px;
		justify-content:center;
		align-items:center;
		border-radius:24px;
		background-color:#30b6c1;
		color:#fff;
	}
	
	.add_fav .star {
		
	}
	
	.add_fav .star img {
		width:auto;
		height:auto;
		max-width:24px;
		max-height:24px;
	}
	
	.add_fav:active .star img {
		transform:scale(0.8);
	}
	
	.add_fav .star .img_star {
		display:block;
	}
	
	.add_fav .star .img_tick {
		display:none;
	}
	
	.add_fav .star .img_cross {
		display:none;
	}
	
	.add_fav .label .message_add {
		display:block;
	}
	
	.add_fav .label .message_saved {
		display:none;
	}
	
	.add_fav .label .message_remove {
		display:none;
	}
	
	.add_fav.selected .star .img_star {
		display:none;
	}
	
	.add_fav.selected .star .img_tick {
		display:block;
	}
	
	.add_fav.selected .label .message_add {
		display:none;
	}
		
	.add_fav.selected .label .message_remove {
		display:block;
	}
	
	.add_fav.selected.saved .label .message_remove {
		display:none;
	}
	
	.add_fav.selected.saved .label .message_saved {
		display:block;
	}
	
	/* ---------------- votehelper ---------------- */
	
	/* ---------------- contact ---------------- */
	
	/* ---------------- preferences ---------------- */
	
	.page_prefs .panel_maxwidth {
		max-width:1024px;
	}
	
	.pref_list {
		margin:32px 0 0 0;
	}
	
	.pref_list .item {
		margin:0 0 24px 0;
	}
	
	.pref_list .item .item_label {
		font-size:1.2em;
		font-weight:700;
		line-height:110%;
		margin:0 0 12px 0;
		color:#052a3c;
	}
	
	.pref_list .item .item_value {
		padding:16px;
		border:1px solid #ccc;
		border-radius:8px;
	}
	
	.pref_list .item .headline {
		font-size:1.6em;
		font-weight:700;
		line-height:110%;
		margin:0 0 16px 0;
		color:#052a3c;
	}
	
	.pref_list .item .person {
		display:flex;
		align-items:center;
		text-decoration:none;
	}
	
	.pref_list .item .person .image {
		flex:0 0 auto;
		width:48px;
		height:48px;
		margin:0 16px 0 0;
		border-radius:50%;
		overflow:hidden;
		background-color:#eee;
	}
	
	.pref_list .item .person .image img {
		object-fit:cover;
		width:100%;
		height:100%;
		color:transparent;
	}
	
	.pref_list .item .person .text {
		font-size:1.2em;
		font-weight:500;
		color:#052a3c;
	}
	
	.pref_list .item .tags {
		
	}
	
	.pref_list .item .tags .tag {
		display:inline-flex;
		align-items:center;
		background-color:#c1edf0;
		line-height:105%;
		margin:8px 8px 0 0;
		border-radius:4px;
	}
	
	.pref_list .item .tags .tag .text {
		padding:8px 0 8px 12px;
		text-decoration:none;
	}
	
	.pref_list .item .tags .tag .clear {
		padding:4px 8px;
		margin:4px;
		text-decoration:none;
		border-radius:4px;
	}
	
	.pref_list .item .actions {
		margin:16px 0 0 0;
	}
	
	.pref_list .item .item_value.empty {
		border-style:dashed;
	}
	
	.pref_list .item .item_value.empty .headline {
		font-weight:500;
		color:#999;
	}
	
	/* -------- popup form -------- */
	
	.fancybox-slide--iframe .fancybox-content {
		border-radius:4px;
		overflow:hidden;
	}
	
	.fancybox-button {
		width:32px;
		height:32px;
		background-color:#2aa7d7;
		color:#fff;
	}
	
	.popup_form {
		background-color:#1c4865;
		background-image:url('/images/site_2022/popup_bg_border.jpg');
		background-size:cover;
		background-position:center center;
	}
	
	.popup_form:before {
		position:absolute;
		display:block;
		content:'';
		top:8px;
		right:8px;
		bottom:8px;
		left:8px;
		background-color:#f5f5f5;
		border-radius:4px;
	}
	
	.popup_form form {
		position:relative;
	}
	
	.popup_form .box_button {
		border-radius:4px;
	}
	
	.popup_form .popup_form_top .headline {
		color:#052a3c;
	}
	
	.popup_form .popup_form_top hr {
		margin:32px 0;
		border:none;
		border-top:1px solid #ccc;
	}
	
	.popup_form .freeform-row .freeform-column .freeform-input {
		border-color:#666;
		border-radius:4px;
	}
	
	.popup_form .freeform-row .freeform-column label.checkbox_label, .popup_form label.checkbox_label {
		padding:0;
		background-color:transparent;
		border:none;
	}
	
	.popup_form_2022_subscribe {
		display:flex;
		align-items:center;
		background-color:#1b4968;
		color:#fff;
		background-size:cover;
		background-position:center center;
		background-repeat: no-repeat;
		padding:48px 16px;
		margin: 0;
	}
	
	.popup_form_2022_subscribe .inner {
		width:100%;
	}
	
	.popup_form_2022_subscribe .row_top {
		margin:0 0 16px 0;
	}
	
	.popup_form_2022_subscribe .headline {
		font-weight:500;
		font-size:1.8em;
		margin:0;
		line-height:110%;
	}
	
	.popup_form_2022_subscribe .subline {
		margin:8px 0 0 0;
		line-height:110%;
	}
		
	.popup_form_2022_subscribe .freeform-row {
		flex:1 1 auto;
		align-items:flex-end;
		margin:0;
		padding:0;
		width:100%;
	}
	
	.popup_form_2022_subscribe .freeform-row .freeform-column {
		margin:0;
		padding:0;
	}
	
	.popup_form_2022_subscribe .freeform-row .freeform-column:first-child {
		flex:1 1 100%;
	}
	
	.popup_form_2022_subscribe .freeform-row .freeform-column .freeform-label {
		font-weight:500;
		padding:4px;
	}
	
	.popup_form_2022_subscribe #form-input-email {
		box-sizing:border-box;
		width:100%;
		height:48px;
		background-color:#fff;
		border:1px solid #052a3c;
		border-top-left-radius:16px;
		border-bottom-left-radius:16px;
		padding:0 16px;
	}
	
	.popup_form_2022_subscribe #form-input-email:focus {
		outline:none;
		box-shadow:none;
	}
	
	.popup_form_2022_subscribe button[type='submit'] {
		width:96px;
		height:48px;
		background-color:#052a3c;
		color:#fff;
		border:none;
		border-top-right-radius:16px;
		border-bottom-right-radius:16px;
	}
	
	.popup_form_2022_subscribe .freeform-alert {
		padding:12px;
		background-color:#30b6c1;
		color:#fff;
		font-weight:700;
		border-radius:8px;
		margin-bottom:16px;
		line-height:110%;
	}
	
	#popup_candidate_actions {
		padding:0;
		background-color:#f5f5f5;
		width:100%;
		max-width:600px;
		border-radius:4px;
		overflow:hidden;
	}
	
	#popup_candidate_actions .fancybox-button {
		color:#fff;
		background-color:#236e93;
		border-radius:4px;
		top:8px;
		right:8px;
	}
		
	#popup_candidate_actions .row_top {
		background-size:cover;
		background-position:bottom left;
	}
	
	#popup_candidate_actions .row_top .inner {
		display:flex;
		align-items:flex-end;
		width:90%;
		max-width:480px;
		margin:0 auto;
		padding:24px 0 0 0;
	}
	
	#popup_candidate_actions .row_top .col_image {
		margin:0 12px 0 0;
	}
	
	#popup_candidate_actions .row_top .col_image img {
		width:auto;
		height:96px;
		vertical-align:bottom;
	}
	
	#popup_candidate_actions .row_top .col_text {
		padding:0 0 16px 0;
	}
	
	#popup_candidate_actions .row_top .col_text .name {
		font-size:1.2em;
		font-weight:700;
		line-height:110%;
		color:#fff;
	}
	
	#popup_candidate_actions .row_top .col_text .electorate {
		font-size:1em;
		line-height:110%;
		color:#fff;
		margin:4px 0 0 0;
	}
	
	#popup_candidate_actions .row_bot {
		display:flex;
		align-items:center;
	}
	
	#popup_candidate_actions .row_bot .inner {
		width:90%;
		max-width:480px;
		margin:0 auto;
		padding:16px 0;
	}
	
	#popup_candidate_actions .row_bot .box_button {
		display:block;
		border-radius:4px;
		margin:4px 0;
	}
		
}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media only screen and (min-width: 480px) {
	
	#page_banner .page_headline {
		font-size:2.8em;
	}
	
	/* ---------------- header ---------------- */
	
	#header {
		padding:0 24px;
	}
	
	#header .header_nav .top {
		padding:0 24px;
	}
	
	#header .header_nav .nav .item {
		padding:12px 24px;
		font-size:1.2em;
	}
	
	/* ---------------- footer ---------------- */
	
	#footer .footer_top .col_candidate {
		margin-bottom:48px;
	}
	
	#footer .footer_top .col_candidate.empty {
		padding:48px 32px;
	}
	
	#footer .footer_top .col_candidate.has_person .inner {
		flex-direction:row;
		width:100%;
	}
	
	#footer .footer_top .col_candidate.has_person .image {
		position:relative;
		display:block;
		margin:0 5% 0 0;
		flex:0 0 45%;
	}
	
	#footer .footer_top .col_candidate.has_person .image .cutout {
		position:absolute;
		right:0;
		bottom:0;
		width:auto;
		height:110%;
		vertical-align:bottom;
	}
	
	#footer .footer_top .col_candidate.has_person .text {
		
	}
	
	#footer .footer_top .col_liberal .inner {
		flex-direction:row;
	}
	
	#footer .footer_top .col_liberal .logo {
		flex:0 0 64px;
		width:64px;
		margin:0 24px 0 0;
	}
	
	/* ---------------- home ---------------- */
	
	#home_feature .row_top {
		min-height:384px;
	}
	
	#home_feature .row_top .feature_headline {
		font-size:2.6em;
		max-width: 320px;
	}
	
	#home_feature .row_top .feature_headline img {
		width:256px;
	}
	
	#home_feature .row_top .line {
		margin-top:24px;
	}
	
	#home_feature .row_bot .panel_maxwidth {
		flex-direction:row;
		flex-wrap:wrap;
	}
	
	#home_feature .row_bot .item {
		margin-right:32px;
	}
	
	#home_feature .row_bot .item.item_vote_early {
		border: none;
		padding-bottom: 0;
    margin-bottom: unset;
	}
	
	#home_key .boxes .box .fg {
		padding:64px 10px;
	}
	
	#home_key .boxes .box .line {
		margin-top:24px;
	}
	
	#home_values .fg {
		min-height:384px;
	}
	
	#home_values .fg .headline {
		margin-bottom:16px;
		font-size:2em;
	}
	
	#home_values .fg .subline {
		font-size:1.1em;
	}
	
	#home_values .fg .actions {
		margin-top:16px;
	}
	
	#home_candidates .col_image {
		flex-basis:256px;
		margin-top:-72px;
	}
	
	#home_candidates .headline {
		font-size:2em;
		margin-bottom:16px;
	}
	
	#home_candidates .subline {
		font-size:1.1em;
	}
	
	#home_candidates .actions {
		margin-top:16px;
	}
	
	#home_vision .fg {
		min-height:384px;
	}
	
	#home_vision .fg .headline {
		margin-bottom:16px;
		font-size:2em;
		max-width: 240px;
	}
	
	#home_vision .fg .subline {
		font-size:1.1em;
	}
	
	#home_vision .fg .actions {
		margin-top:16px;
	}
	
	/* ---------------- policies ---------------- */
  
  .policy_filter .delivered_options .option {
    flex: 0 0 31.33%;
    font-size: 15px;
  }
  
  .policy_filter .delivered_options .option > div span{
    font-size: 15px;
  }

	#t22_policy_feature .fg {
		min-height:256px;
	}
	
	#t22_policy_feature .headline {
		font-size:2.2em;
	}
	
	#t22_policy_feature .line {
		margin-top:24px;
	}
	
	#t22_policy_main .section {
		margin:32px 0;
	}
	
	#t22_policy_main .col_right {
		margin-bottom:48px;
	}
	
	#t22_policy_main .col_right .section{
		padding:32px;
	}
	
	#t22_policy_extra {
		min-height:384px;
	}
	
	#t22_policy_extra .text .large {
		font-size:1.2em;
	}
	
	#t22_policy_related .panel_top {
		margin-bottom:32px;
	}
	
	#t22_policy_related .panel_top .section_headline {
		font-size:2em;
	}
	
	#t22_policy_main .section.excerpt p {
		font-size:2.5em;
    font-weight: 700;
		line-height:140%;
		color:#30b6c1;
		color: #0c3551;
	}
	
	/* -------- */
	
	.policy_list.small_boxes .item.small_box {
		
	}
	
	.policy_list.small_boxes .item.small_box .fg {
		padding:24px;
	}
	
	.policy_list.small_boxes .item.small_box .headline {
		font-size:1.8em;
	}
	
	/* -------- */
	
	.policy_list.large_boxes {
		margin:-12px;
	}
	
	.policy_list.large_boxes .item {
		margin:12px;
	}

	
	.policy_list.large_boxes .item .image {
		height:256px;
	}
	
	.policy_list.large_boxes .item .text {
		padding:24px;
	}
	
	.policy_list.large_boxes .item .text .tags {
		margin-top:16px;
	}
	
	.policy_list.large_boxes .item .text .text_bot {
		margin-top:16px;
	}
	
	.policy_list.large_boxes .empty {
		padding:24px;
		margin:12px;
	}
	
	/* -------- */
	
	.policy_filter {
		padding-top:24px;
	}
	
	.policy_filter .row_search .popout .label {
		font-size:1.1em;
	}
	
	.policy_filter .row_search .popout_topic .topics .topic {
		padding:8px 12px;
	}
		
	/* ---------------- candidates ---------------- */
	
	#find_candidate .panel_filter {
		padding-top:48px;
	}
	
	#find_candidate .candidate_filter {
		padding:24px;
	}
	
	#find_candidate .team_list .multi {
		margin:12px;
		padding:24px;
	}
	
	#find_candidate .team_list .empty {
		margin:12px;
		padding:24px;
	}
	
	#find_candidate .team_list .person .long_name {
		font-size:1.6em;
	}
	
	#find_candidate .team_list .person .roles {
		margin-top:12px;
	}
	
	#find_candidate .team_list .person .roles .role {
		font-size:1.2em;
	}
	
	#find_candidate .team_list .person .row_actions {
		margin-top:16px;
	}
	
	/* ---- candidate entry ---- */
	
	#t22_candidate {
		
	}
	
	#t22_candidate_feature {
		
	}
		
	#t22_candidate_feature .col_image {
		width:256px;
		height:256px;
	}
		
	#t22_candidate_feature .col_text {
		padding:32px 32px 48px 32px;
	}
		
	#t22_candidate_feature .candidate_headline .name {
		font-size:2.2em;
		margin-bottom:8px;
		
	}
	
	#t22_candidate_feature .candidate_headline .role {
		font-size:1.6em;
	}
	
	#t22_candidate_feature .branding {
		padding:20px;
	}
	
	#t22_candidate_feature .branding .logo {
		width:96px;
	}
		
	#t22_candidate_ask {
		padding:32px;
	}
	
	#t22_candidate_ask .question {
		margin-bottom:16px;
	}
	
	#t22_candidate_ask .info {
		margin-top:16px;
	}
	
	#t22_candidate_ask .thanks {
		font-size:1.2em;
	}
	
	#t22_candidate_about {
		padding:32px;
	}
	
	#t22_candidate_about .col_actions {
		
	}
	
	#t22_candidate_about .col_actions .long_buttons .action {
		padding:16px;
	}
	
	#t22_candidate_about .col_actions .square_buttons {
		padding:24px;
	}
	
	#t22_candidate_about .col_actions .square_buttons .label {
		padding:0 16px;
		margin-bottom:16px;
		font-size:1.4em;
	}
	
	#t22_candidate_about .col_policies {
		margin-top:48px;
		padding-top:48px;
	}
	
	#t22_candidate_about .col_policies .group {
		margin-bottom:48px;
	}
	
	#t22_candidate_policies {
		padding:32px 0;
	}
	
	#t22_candidate_policies .panel_top {
		margin-bottom:16px;
	}
	
	#t22_candidate_policies .section_headline {
		font-size:1.8em;
	}
		
	/* ---------------- about ---------------- */
	
	#t22_vision_content {
		
	}
		
	#t22_vision_content .section_video {
		margin:0 0 48px 0;
	}
	
	#t22_vision_content .page_headline {
		margin:0 0 32px 0;
		font-size:2em;
	}
		
	#t22_vision_content .basic_content p {
		font-size:16px;
	}
	
	#t22_vision_content .signoff {
		margin:32px 0;
		padding:32px 0 0;
		font-size:1.2em;
	}
	
	/* ---------------- votehelper ---------------- */
	
	/* ---------------- contact ---------------- */
	
	/* ---------------- preferences ---------------- */
	
	.pref_list {
		
	}
	
	.pref_list .item .item_value {
		padding:24px;
	}
	
	.pref_list .item .headline {
		font-size:1.8em;
	}
	
	.pref_list .item .person .image {
		width:64px;
		height:64px;
	}
	
	.pref_list .item .person .text {
		font-size:1.4em;
	}
	
	/* -------- popup form -------- */
	
	.fancybox-button {
		width:40px;
		height:40px;
	}
	
	.popup_form_2022_subscribe {
		padding:96px 32px;
	}
	
	.popup_form_2022_subscribe .row_top {
		margin:0 0 24px 0;
	}
	
	.popup_form_2022_subscribe .headline {
		font-size:2em;
	}
	
	.popup_form_2022_subscribe .subline {
		margin:12px 0 0 0;
	}
		
	.popup_form_2022_subscribe #form-input-email {
		height:64px;
		padding:0 16px;
	}
		
	.popup_form_2022_subscribe button[type='submit'] {
		width:96px;
		height:64px;
	}
	
	#popup_candidate_actions {
		
	}
	
	#popup_candidate_actions .row_top .col_image {
		margin-right:16px;
	}
	
	#popup_candidate_actions .row_top .col_image img {
		height:128px;
	}
	
	#popup_candidate_actions .row_top .col_text .name {
		font-size:1.6em;
	}
	
	#popup_candidate_actions .row_top .col_text .electorate {
		font-size:1.2em;
	}
	
	#popup_candidate_actions .row_top .col_text {
		padding-bottom:24px;
	}
	
	#popup_candidate_actions .row_bot .inner {
		padding:32px 0;
	}
	
}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media only screen and (min-width: 768px) {
	
	#page_banner .page_headline {
		font-size:3.2em;
	}
	
	/* ---------------- header ---------------- */
	
	#header {
		height:128px;
		padding:0 32px;
	}
	
	.header_spacer {
		height:128px;
	}
	
	#header .header_nav .top {
		height:128px;
		padding:0 32px;
	}
	
	#header .header_nav .nav .item {
		padding:12px 32px;
		font-size:1.4em;
	}
	
	/* ---------------- footer ---------------- */
	
	#footer .footer_top .cols {
		flex-direction:row;
		justify-content:space-between;
		align-items:center;
	}
	
	#footer .footer_top .cols .col {
		justify-content:center;
		align-items:center;
		flex:0 0 47%;
		margin:0;
	}
	
	#footer .footer_top .cols .col .inner {
		
	}
	
	#footer .footer_top .col_candidate.has_person .image {
		display:none;
	}
	
	#footer .footer_top .col_candidate.has_person .text {
		
	}
	
	#footer .footer_top .col_liberal .inner {
		flex-direction:column;
	}
	
	#footer .footer_top .col_liberal .logo {
		margin:0 0 16px 0;
	}
	
	#footer .footer_bot {
		padding-bottom:40px;
		text-align:center;
	}
	
	/* ---------------- home ---------------- */
	
	#home_feature .row_top {
		min-height:480px;
	}
	
	#home_feature .row_top .feature_headline {
		font-size:3.6em;
		width:70%;
		max-width: 450px;
	}
	
	#home_feature .row_top .feature_headline img {
		width:384px;
	}
	
	#home_feature .row_top .line {
		width:96px;
		height:8px;
		margin-top:32px;
	}
	
	#home_feature .row_bot {
		padding:24px 0;
    border-bottom: 10px solid #71cfec;
	}
	
	#home_feature .row_bot .item {
		font-size:1em;
	}
	
	#home_key .boxes {
		flex-direction:row;
		min-height:384px;
	}
	
	#home_key .boxes .box {
		flex:1 1 50%;
		/*border-bottom:1px solid #ddd;*/
	}
	
	#home_key .boxes .box:first-child {
		border:none;
		/*border-right:1px solid #ddd;*/
		/*border-bottom:1px solid #ddd;*/
	}
	
	#home_key .boxes .box:last-child {
		border:none;
		/*border-left:1px solid #ddd;*/
		/*border-bottom:1px solid #ddd;*/
	}
	
	#home_key .boxes .box .fg {

	}
	
	#home_key .boxes .box .line {
		margin-top:24px;
	}
	
	#home_values .bg .overlay {
		opacity:0.5;
	}
	
	#home_values .fg {
		min-height:480px;
	}
	
	#home_values .fg .box {
		
	}
	
	#home_values .fg .headline {
		margin-bottom:24px;
		font-size:2.4em;
	}
	
	#home_values .fg .subline {
		font-size:1.2em;
	}
	
	#home_values .fg .actions {
		margin-top:24px;
	}
	
	#home_candidates .cols {
		flex-direction:row-reverse;
		justify-content:space-between;
		align-items:center;
	}
	
	#home_candidates .cols .col_text {
		margin-right:64px;
	}
	
	#home_candidates .headline {
		font-size:2.4em;
		margin-bottom:24px;
	}
	
	#home_candidates .subline {
		font-size:1.2em;
	}
	
	#home_candidates .actions {
		margin-top:24px;
	}
	
	#home_candidates .cols .col_image {
		flex-basis:auto;
		height:256px;
		margin:0;
	}
  
  #home_candidates .col_image .cutout {
		height: 100%;
	  max-width: 100%;
      max-height: 600px;
  }
	
	#home_vision .bg .overlay {
		opacity:0.5;
	}
	
	#home_vision .fg {
		min-height:480px;
	}
	
	#home_vision .fg .box {
		
	}
	
	#home_vision .fg .headline {
		margin-bottom:24px;
		font-size:2.4em;
		max-width: 270px;
	}
	
	#home_vision .fg .subline {
		font-size:1.2em;
	}
	
	#home_vision .fg .actions {
		margin-top:24px;
	}
	
	/* ---------------- policies ---------------- */
	
	#t22_policy_feature .fg {
		min-height:320px;
	}
	
	#t22_policy_feature .headline {
		font-size:2.6em;
		width:100%;
	}
	
	#t22_policy_feature .line {
		width:96px;
		height:8px;
		margin-top:32px;
	}
	
	#t22_policy_main .section {
		margin:60px 0;
	}
	
	#t22_policy_main .section_headline {
		font-size:1.6em;
	}

	#t22_policy_main .col_left .policy_gallery a{
		flex: 0 0 32.33%;
		padding-bottom: 25%;
	}
	
	#t22_policy_main .col_right {
		margin-top:24px;
	}
	
	#t22_policy_main .col_right .section {
		padding:48px;
	}
	
	#t22_policy_extra {
		min-height:480px;
	}
	
	#t22_policy_extra .text .large {
		font-size:1.4em;
	}
	
	#t22_policy_related .panel_top {
		margin-bottom:48px;
	}
	
	#t22_policy_related .panel_top .section_headline {
		font-size:2.6em;
		text-align:center;
	}
	
	/* -------- */
	
	.policy_list.small_boxes {
		flex-direction:row;
		flex-wrap:wrap;
		margin:-12px;
	}
	
	.policy_list.small_boxes .item.small_box {
		flex:0 0 calc(50% - 24px);
		margin:12px;
	}
	
	.policy_list.small_boxes .item.small_box .fg {
		padding:32px;
	}
	
	/* -------- */
	
	.policy_list.large_boxes {
		flex-direction:row;
		flex-wrap:wrap;
	}
	
	.policy_list.large_boxes .item {
		flex:0 0 calc(50% - 24px);
	}
	
	/* -------- */
		
	.policy_filter {
		padding-top:32px;
	}
	
	.policy_filter .row_delivered {
		margin-bottom:24px;
	}
	
	.policy_filter .delivered_options {
		flex-direction:row;
		padding: .5%;
	}
	
	.policy_filter .delivered_options .option {
    flex: 0 0 19%;
    margin: .5%;
		flex-wrap: wrap;
		padding: 0;
	}
	
	.policy_filter .delivered_options .option > div{
		padding: 15px 5px;
	}
	
	.policy_filter .row_search .actions {
		flex-direction:row;
		margin:0 -4px;
	}
	
	.policy_filter .row_search .action {
		flex:1 1 auto;
		width:100%;
		margin:0 4px;
	}
	
	.policy_filter .row_search .popout {
		padding:32px;
	}
	
	.policy_filter .row_search .popout .label {
		margin-bottom:12px;
	}
	
	.policy_filter .row_search .popout_topic .topics {
		margin:-4px;
	}
	
	.policy_filter .row_search .popout_topic .topics .topic {
		margin:4px;
		padding:12px 16px;
	}
	
	.policy_filter .row_search .popout_topic .topics .topic:hover {
		box-shadow:1px 1px 4px rgba(0,0,0,0.2);
	}
	
	.policy_filter .row_search .popout_topic .topics .topic:active {
		box-shadow:inset 1px 1px 8px rgba(0,0,0,0.3);
	}
		
	/* ---------------- candidates ---------------- */
	
	#find_candidate .panel_filter {
		padding-top:64px;
	}
	
	#find_candidate .candidate_filter {
		padding:32px;
		border-radius:16px;
	}
	
	#find_candidate .candidate_filter #search_field {
		height:64px;
		padding:0 16px;
	}
	
	#find_candidate .team_list .multi {
		padding:32px;
		border-radius:16px;
	}
	
	#find_candidate .team_list .empty {
		padding:32px;
		border-radius:16px;
	}
	
	/* ---- candidate entry ---- */
	
	#t22_candidate {
		
	}
	
	#t22_candidate_feature {
		align-items:flex-end;
	}
	
	#t22_candidate_feature .cols {
		flex-direction:row;
		justify-content:center;
		align-items:normal;
		width:100%;
	}
	
	#t22_candidate_feature .col_image {
		height:auto;
		width:40%;
		padding:0;
	}
	
	#t22_candidate_feature .col_text {
		align-self:center;
		text-align:left;
		padding:64px;
		width:auto;
	}
	
	#t22_candidate_feature .branding {
		display:flex;
		justify-content:flex-start;
		align-items:flex-end;
		top:auto;
		bottom:0;
		padding:24px;
		width:256px;
		height:256px;
		background:transparent;
		background:linear-gradient(45deg, rgba(32,95,130,1) 0%, rgba(32,95,130,0) 50%); 
	}
	
	#t22_candidate_feature .branding .logo {
		width:96px;
	}
	
	#t22_candidate_about {
		padding:48px;
	}
	
	#t22_candidate_about .col_actions .video_box {
		margin-bottom:24px;
	}
		
	#t22_candidate_about .col_actions .long_buttons .action {
		padding:24px;
	}
	
	#t22_candidate_about .col_actions .long_buttons .action .icon {
		margin-right:12px;
	}
	
	#t22_candidate_about .col_actions .square_buttons {
		margin-top:24px;
	}
	
	#t22_candidate_about .col_policies .actions {
		margin-top:24px;
	}
	
	#t22_candidate_policies {
		padding:48px 0;
	}
	
	#t22_candidate_policies .panel_top {
		margin-bottom:24px;
	}
	
	#t22_candidate_policies .section_headline {
		font-size:2.2em;
	}
	
	/* ---------------- about ---------------- */
	
	#t22_vision_content {
		
	}
		
	#t22_vision_content .section_video {
		margin:0 0 64px 0;
	}
	
	#t22_vision_content .page_headline {
		margin:0 0 48px 0;
		font-size:2.4em;
	}
		
	#t22_vision_content .basic_content p {
		/*font-size:1.3em;*/
		margin:1.5em 0;
	}
	
	#t22_vision_content .signoff {
		margin:48px 0;
		padding:48px 0 0;
	}
  
    	

	/* ---------------- votehelper ---------------- */
	
	/* ---------------- contact ---------------- */
	
	/* ---------------- preferences ---------------- */
	
	.pref_list {
		margin-top:64px;
	}
	
	.pref_list .item {
		margin-bottom:48px;
	}
	
	.pref_list .item .item_value {
		padding:32px;
	}
	
	.pref_list .item .headline {
		font-size:2em;
		margin-bottom:24px;
	}
	
	.pref_list .item .person .image {
		margin-right:24px;
	}
	
	.pref_list .item .person .text {
		font-size:1.6em;
	}
	
	.pref_list .item .actions {
		margin-top:24px;
	}
	
	/* -------- popup form -------- */
	
	.popup_form:before {
		top:16px;
		right:16px;
		bottom:16px;
		left:16px;
	}
	
	.popup_form_2022_subscribe {
		padding:192px 64px;
	}
	
	.popup_form_2022_subscribe .row_top {
		margin:0 0 48px 0;
	}
	
	.popup_form_2022_subscribe .headline {
		font-size:2.6em;
	}
	
	.popup_form_2022_subscribe .subline {
		margin:16px 0 0 0;
		font-size:1.2em;
	}
	
	.popup_form_2022_subscribe button[type="submit"] {
		width:128px;
	}
	
	#popup_candidate_actions {
		
	}
	
	#popup_candidate_actions .row_top .col_image {
		margin-right:24px;
	}
	
	#popup_candidate_actions .row_top .col_image img {
		height:192px;
	}
	
	#popup_candidate_actions .row_top .col_text .name {
		font-size:2em;
	}
	
	#popup_candidate_actions .row_top .col_text .electorate {
		font-size:1.2em;
	}
	
	#popup_candidate_actions .row_top .col_text {
		padding-bottom:32px;
	}
	
	#popup_candidate_actions .row_bot .inner {
		padding:48px 0;
	}
		
}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media only screen and (min-width: 1024px) {
	
	#page_banner .page_headline {
		font-size:3.4em;
	}
	
	/* ---------------- header ---------------- */
	
	/* ---------------- footer ---------------- */
	
	#footer .footer_top .col_candidate.has_person .image {
		display:block;
	}
	
	/* ---------------- home ---------------- */
	
	/* ---------------- policies ---------------- */
	
	/* -------- */
	
	.policy_filter {
		
	}
	
	/* ---------------- candidates ---------------- */
	
	/* ---- candidate entry ---- */
	
	#t22_candidate {
		
	}
	
	#t22_candidate_feature .col_text {
		padding:96px 64px;
	}
	
	#t22_candidate_feature .candidate_headline .name {
		font-size:2.6em;
	}
	
	#t22_candidate_feature .candidate_headline .role {
		font-size:1.8em;
	}
	
	#t22_candidate_feature .actions {
		margin-top:32px;
	}
	
	#t22_candidate_about {
		
	}
	
	#t22_candidate_about .cols {
		flex-direction:row;
	}
	
	#t22_candidate_about .col_actions {
		flex:1 1 40%;
		margin:0;
		padding:0 48px 0 0;
	}
	
	#t22_candidate_about .col_policies {
		flex:1 1 60%;
		margin:0;
		padding:0 0 0 48px;
		border:none;
		border-left:1px solid #ccc;
	}
	
	/* ---------------- about ---------------- */
	
	/* ---------------- votehelper ---------------- */
	
	/* ---------------- contact ---------------- */
	
	/* ---------------- preferences ---------------- */
		
}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media only screen and (min-width: 1280px) {
	
	.box_button.lightblue:hover {
		background-color:#71cfec;
	}
	
	.box_button.outline.grey:hover {
		background-color:#8fa8b5;
		color:#fff;
	}
	
	.page_subline {
		font-size:1.2em;
	}
	
	#page_banner .panel_padding {
		padding top: 0px;
		padding-bottom: 160px;
		padding-left: 160px;
		padding-right: 160px;
	} 
	
	#page_banner .page_headline {
		font-size:3.6em;
	}
	
	/* -------- */
	
	.video_box:hover .overlay {
		opacity:0.1;
	}
	
	.video_box .icon {
		transition:transform 0.1s, opacity 0.1s;
	}
		
	.video_box:hover .icon {
		transform:scale(1.1);
		opacity:1;
		transition:transform 0s, opacity 0s;
	}
	
	.video_box:active .icon {
		transform:scale(0.9);
		transition:transform 0s;
	}
	
	/* ---------------- header ---------------- */
	
	#header {
		justify-content:space-between;
		height:160px;
		padding:0 48px;
	}
	
	.header_spacer {
		height:180px;
	}
	
	#header .header_logo {
		width:auto;
	}
	
	#header .header_logo .logo img {
		height:150px;
	}
	
	#header .header_logo .nav_open {
		display:none;
	}
	
	#header .header_nav {
		display:flex;
		align-items:center;
		position:relative;
		top:auto;
		right:auto;
		bottom:auto;
		left:auto;
		visibility:visible;
		transition:visibility 0s;
	}
	
	#header .header_nav .bg {
		display:none;
	}
	
	#header .header_nav .fg {
		display:flex;
		align-items:center;
		opacity:1;
	}
	
	#header .header_nav .top {
		display:none;
	}
	
	#header .header_nav .nav {
		flex-direction:row;
		align-items:center;
		opacity:1;
		transition:opacity 0s;
		transform:none;
	}
	
	#header .header_nav .nav .item {
		font-size:1em;
		padding:12px 16px;
		border-radius:64px;
		border:1px solid transparent;
	}
	
	#header .header_nav .nav .item:hover {
		background-color:rgba(255,255,255,0.1);
		background-color:rgba(159,245,253,0.25);
	}
	
	#header .header_nav .nav .item.highlight {
		border-color:#9ff5fd;
		margin: 0 10px;
	}
	
	#header .header_nav .nav .item.highlight img{
		height: 13px;
	}
	
	#header .header_nav .nav .item.icon {
		width:24px;
		text-align:center;
	}
	
	/* ---------------- footer ---------------- */
	
	#footer {
		
	}
	
	#footer a {
		text-decoration:none;
	}
		
	#footer .footer_top .col_candidate {
		
	}
	
	#footer .footer_top .col_candidate.empty {
		padding:64px;
		text-align:center;
	}
	
	#footer .footer_top .col_candidate .headline {
		font-size:1.6em;
	}
	
	#footer .footer_top .col_candidate .actions {
		margin-top:24px;
	}
	
	#footer .footer_top .col_candidate.has_person .text {
		padding:32px;
	}
		
	#footer .footer_top .col_liberal .inner {
		flex-direction:row;
		align-items:center;
	}
	
	#footer .footer_top .col_liberal .logo {
		flex-basis:96px;
		width:96px;
		height:96px;
		margin:0 48px 0 0;
	}
	
	#footer .footer_top .col_liberal .logo img {
		max-width:96px;
		max-height:96px;
	}
	
	#footer .footer_top .col_liberal .text {
		font-size:1.1em;
	}
	
	#footer .footer_top .col_liberal .text a:hover {
		text-decoration:underline;
	}
	
	#footer .footer_bot a:hover {
		text-decoration:underline;
	}
	
	/* ---------------- home ---------------- */
	
	#home_feature .row_top {
		min-height:512px;
	}
	
	#home_feature .row_top .feature_headline {
		font-size:4em;
		width:60%;
		max-width: 500px;
	}
	
	#home_feature .row_top .feature_headline img {
		width:550px;
	}
	
	#home_feature .row_headshot {
		width:46%;
		z-index:30;
	}
	
	#home_feature .row_bot {
		z-index:20;
		padding:50px 0;
	}
	
	#home_feature .row_bot .item {
		font-size:1.1em;
		margin-right:48px;
	}
	
	#home_feature .row_bot .item:hover {
		text-decoration:underline;
	}
	
	#home_key .boxes {
		min-height:480px;
	}
	
	#home_key .boxes .box .headline {
		font-size:2.4em;
	}
	
	#home_key .boxes .box .line {
		width:128px;
		height:8px;
		margin-top:32px;
	}
	
	#home_key .boxes .box.hover .bg {
		background-color:#052a3c;
	}
	
	#home_key .boxes .box.hover .bg video {
		opacity:1;
	}
	
	#home_key .boxes .box.hover .bg .video_iframe{
		opacity: 1;
	}
	
	#home_key .boxes .box.hover .bg .overlay {
		opacity:1.0;
	}
	
	
	#home_key .boxes .box.hover .tick{
		background-image: url(https://2022.saliberal.org.au/images/site_2022/icon_homebox_tick_white.svg);
	}
	
	#home_key .boxes .box.hover .headline {
		color:#fff;
	}
	
	#home_key .boxes .box.hover .line {
		background-color:#9ff5fd;
	}
	
	#home_values .bg .overlay {
		opacity:1;
		background:linear-gradient(90deg, rgba(34,34,34,0) 0%, rgba(34,34,34,0.4) 100%);
	}
	
	#home_values .fg {
		min-height:600px;
	}
	
	#home_values .fg .box {
		max-width:480px;
	}
	
	#home_values .fg .headline {
		font-size:3.2em;
	}
	
	#home_values .fg .actions {
		margin-top:32px;
	}
	
	#home_candidates .cols {
		
	}
	
	#home_candidates .cols .col_text {
		margin-right:128px;
		max-width:450px;
	}
	
	#home_candidates .headline {
		font-size:3em;
		margin-bottom:32px;
	}
	
	#home_candidates .subline {
		
	}
	
	#home_candidates .actions {
		margin-top:32px;
	}
	
	#home_candidates .cols .col_image {
		height:560px;
	}
	
	#home_vision .bg .overlay {
		opacity:1;
		background:linear-gradient(90deg, rgba(34,34,34,0) 0%, rgba(34,34,34,0.4) 100%);
	}
	
	#home_vision .fg {
		min-height:600px;
	}
	
	#home_vision .fg .box {
		max-width:480px;
	}
	
	#home_vision .fg .headline {
		font-size:3.2em;
		max-width: 400px;
	}
	
	#home_vision .fg .actions {
		margin-top:32px;
	}
	
	/* ---------------- policies ---------------- */
	
	#t22_policy_feature .fg {
		min-height:384px;
	}
	
	#t22_policy_feature .headline {
		font-size:3em;
		width:100%;
	}
	
	#t22_policy_main {
		
	}
	
	#t22_policy_main .section_headline {
		font-size:1.8em;
	}
	
	#t22_policy_main p,
	#t22_policy_main li {
		font-size:1.1em;
	}
	
	#t22_policy_main table {
		
	}
	
	#t22_policy_main table td {
		font-size:1.1em;
	}
		
	#t22_policy_main .cols {
		flex-direction:row;
		justify-content:space-between;
		align-items:flex-start;
	}
	
	#t22_policy_main .col_left {
		
	}
	
	#t22_policy_main .col_right {
		margin:0 0 0 96px;
		flex:0 0 384px;
	}
	
	#t22_policy_extra {
		min-height:512px;
	}
	
	#t22_policy_extra .text {
		width:50%;
	}
	
	#t22_policy_extra .text .large {
		font-size:1.6em;
	}
	
	#t22_policy_related .panel_top {
		margin-bottom:64px;
	}
	
	#t22_policy_related .panel_top .section_headline {
		font-size:3em;
	}
	
	/* -------- */
	
	.policy_list.small_boxes {
		margin:-16px;
	}
	
	.policy_list.small_boxes .item.small_box {
		flex:0 0 calc(33.333% - 32px);
		margin:16px;
	}
	
	/* -------- */
	
	.policy_list.large_boxes {
		
	}
	
	.policy_list.large_boxes .item {
		flex:0 0 calc(33.333% - 24px);
	}
	
	.policy_list.large_boxes .item .image:hover .overlay {
		opacity:1;
	}
	
	.policy_list.large_boxes .item .text .headline a:hover {
		text-decoration:underline;
	}
	
	.policy_list.large_boxes .item .text .tags .tag:hover {
		text-decoration:underline;
	}
	
	.policy_list.large_boxes .item .text .tags .tag.highlighted:hover {
		background-color:#d8fbfd;
		text-decoration:none;
	}
	
	.policy_list.large_boxes .item .text .tags .tag.highlighted.electorate:hover {
		background-color:#fff3d1;
	}
	
	/* -------- */
	
	.policy_filter {
		padding-top:0;
		margin-top:-90px;
	}
	
	.policy_filter .row_delivered {
		margin-bottom:32px;
	}
	
	.policy_filter .delivered_options .option {
    flex: 0 0 10.1%;
		display:flex;
		justify-content: center;
		box-sizing:border-box;
	}
	
	.policy_filter .delivered_options .option:hover {
		background-color:#fff;
	}
	
	.policy_filter .delivered_options .option.selected:hover {
		background-color:#0e5172;
	}
		
	.policy_filter .row_search .actions {
		margin:0 -8px;
	}
	
	.policy_filter .row_search .action {
		margin:0 8px;
		padding:24px;
	}
	
	.policy_filter .row_search .action:hover {
		background-color:#eaf0f0;
	}
	
	.policy_filter .row_search .action.selected {
		background-color:#d1e0e1;
	}
	
	.policy_filter .row_search .action .icon {
		margin-right:12px;
	}
	
	.policy_filter .row_search .action .clear {
		padding:24px;
	}
	
	.policy_filter .row_search .action .clear:hover {
		background-color:rgba(255,255,255,0.25);
		border-top-right-radius:8px;
		border-bottom-right-radius:8px;
	}
	
	.policy_filter .row_search .popout_bg {
		background-color:#ccc;
		opacity:0.1;
	}
	
	.policy_filter .row_search .popout {
		position:absolute;
		left:0;
		right:0;
		padding:48px;
		margin-top:16px;
		box-shadow:4px 4px 64px rgba(100,100,100,0.25);
	}
	
	.policy_filter .row_search .popout .label {
		margin-bottom:16px;
	}
	
	.policy_filter .row_search .popout_location .suggestions .suggestion:hover {
		background-color:#009fc6;
		color:#fff;
	}
			
	/* ---------------- candidates ---------------- */
	
	#find_candidate .panel_filter {
		padding-top:0;
		margin-top:-96px;
	}
	
	#find_candidate .candidate_filter {
		padding:48px;
	}
	
	#find_candidate .candidate_filter label {
		font-size:1.2em;
	}
	
	#find_candidate .team_list .multi {
		margin:16px;
		padding:32px;
	}
	
	#find_candidate .team_list .empty {
		margin:16px;
		padding:32px;
	}
	
	#find_candidate .candidate_filter .suggestions .suggestion {
		
	}
	
	#find_candidate .candidate_filter .suggestions .suggestion:hover {
		background-color:#009fc6;
		color:#fff;
	}
			
	#find_candidate .team_list .person a.image:hover:after {
		opacity:0.2;
	}
	
	/* ---- candidate entry ---- */
	
	#t22_candidate {
		
	}
	
	#t22_candidate_feature {
		margin-bottom:24px;
	}
		
	#t22_candidate_feature .col_text {
		padding:128px 96px;
	}
	
	#t22_candidate_feature .candidate_headline .name {
		font-size:3em;
	}
	
	#t22_candidate_feature .candidate_headline .role {
		font-size:2.2em;
	}
	
	#t22_candidate_feature .actions {
		flex-direction:row;
		margin-top:48px;
	}
		
	#t22_candidate_feature .branding .logo {
		width:160px;
	}
	
	#t22_candidate_ask {
		padding:48px;
		margin-bottom:24px;
	}
	
	#t22_candidate_ask .question {
		font-size:1.8em;
		margin-bottom:24px;
	}
	
	#t22_candidate_ask .info {
		margin-top:24px;
		font-size:1em;
	}
	
	#t22_candidate_about {
		padding:64px;
	}
		
	#t22_candidate_about .col_actions {
		flex-basis:50%;
		padding-right:64px;
	}
		
	#t22_candidate_about .col_actions .long_buttons .action {
		font-size:1.1em;
	}
	
	#t22_candidate_about .col_actions .long_buttons .action:active {
		box-shadow:inset 4px 4px 16px rgba(0,0,0,0.25);
	}
		
	#t22_candidate_about .col_actions .long_buttons .action .icon {
		width:20px;
	}
	
	#t22_candidate_about .col_actions .long_buttons .action .icon img {
		max-width:20px;
		max-height:20px;
	}
	
	#t22_candidate_about .col_actions .long_buttons .action:hover .overlay {
		opacity:0.1;
	}
	
	#t22_candidate_about .col_actions .square_buttons {
		flex-direction:row;
		justify-content:space-between;
		padding:32px;
	}
	
	#t22_candidate_about .col_actions .square_buttons .label {
		margin:0;
		padding:0;
	}
	
	#t22_candidate_about .col_actions .square_buttons .action:hover .overlay {
		opacity:0.5;
	}
	
	#t22_candidate_about .col_actions .square_buttons .action:active {
		transform:scale(0.95);
	}
	
	#t22_candidate_about .col_actions .htv_preview {
		
	}
	
	#t22_candidate_about .col_actions .htv_preview .htv_img {
		
	}
	
	#t22_candidate_about .col_actions .htv_preview .overlay {
		transition:opacity 0.1s;
	}
	
	#t22_candidate_about .col_actions .htv_preview .overlay:hover {
		opacity:0.2;
		transition:opacity 0s;
	}
	
	#t22_candidate_about .col_policies {
		flex-basis:50%;
		padding-left:64px;
	}
	
	#t22_candidate_about .col_policies .tick_items li {
		margin:12px 0;
		font-size:1.1em;
	}
	
	#t22_candidate_about .col_policies .tick_items li .icon {
		width:24px;
		margin-right:12px;
	}
		
	#t22_candidate_about .col_policies .tick_items li .icon img {
		max-width:24px;
		max-height:24px;
	}
	
	#t22_candidate_policies {
		padding:64px 0;
	}
	
	#t22_candidate_policies .panel_top {
		margin-bottom:32px;
	}
	
	#t22_candidate_policies .section_headline {
		font-size:2.6em;
	}
	
	/* -------- add_fav -------- */
	
	.add_fav .label {
		transition:transform 0s 0.5s, opacity 0.5s 0s, background-color 0.5s 0s;
		background-color:transparent;
	}
	
	.add_fav .star {
		background-color:transparent;
		transition:background-color 0.5s 0s;
	}
	
	.add_fav.selected:hover .star .img_tick {
		display:none;
	}
	
	.add_fav.selected:hover .star .img_cross {
		display:block;
	}
	
	.add_fav.selected.saved:hover .star .img_cross {
		display:none;
	}
	
	.add_fav.selected.saved:hover .star .img_tick {
		display:block;
	}
	
	.add_fav:hover .label {
		transform:translateX(0);
		opacity:1;
		transition:transform 0.2s 0s, opacity 0.2s 0s, background-color 0.2s 0s;
		background-color:#30b6c1;
	}
	
	.add_fav:hover .star {
		background-color:#30b6c1;
		transition:background-color 0.2s 0s;
	}
	
	.add_fav.selected:hover .label {
		background-color:#30b6c1;
	}
	
	.add_fav.selected .star {
		background-color:#30b6c1;
	}
	
	/* ---------------- about ---------------- */
	
	/* ---------------- votehelper ---------------- */
	
	/* ---------------- contact ---------------- */
	
	/* ---------------- preferences ---------------- */
	
	.pref_list {
		
	}
	
	.pref_list .item .item_label {
		font-size:1.4em;
	}
	
	.pref_list .item .tags .tag .text {
		padding:12px 0 12px 16px;
	}
	
	.pref_list .item .tags .tag .clear {
		padding:8px 12px;
	}
	
	.pref_list .item .tags .tag .text:hover {
		text-decoration:underline;
	}
	
	.pref_list .item .tags .tag .clear:hover {
		background-color:rgba(255,255,255,0.25);
	}
	
	/* -------- popup form -------- */
		
	.popup_form_2022_subscribe button[type="submit"]:hover {
		background-color:#093951;
	}
	
	.fancybox-button {
		width:48px;
		height:48px;
	}
	
	.fancybox-button:hover {
		background-color:#41b3df;
	}
	
}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media only screen and (min-width: 1600px) {
	
	#page_banner .panel_padding {
		padding top: 0px;
		padding-bottom: 160px;
		padding-left: 160px;
		padding-right: 160px;
	}
	
	#page_banner .page_headline {
		font-size:3.5em;
	}
	
	.video_box .icon {

	}
	
	/* ---------------- header ---------------- */
	
	#header {
		height:192px;
		padding:0 46px;
	}
	
	.header_spacer {
		height:192px;
	}
	
	#header .header_nav .nav .item {
		padding:16px 24px;
		font-size:1.1em;
	}
	
	#header .header_logo .logo img {
		
	}
	
	/* ---------------- footer ---------------- */
	
	#footer .footer_top .col_candidate {
		
	}
	
	#footer .footer_top .col_candidate.empty {
		padding:96px 64px;
	}
	
	#footer .footer_top .col_candidate .headline {
		font-size:1.8em;
	}
	
	#footer .footer_top .col_candidate .actions {
		margin-top:32px;
	}
	
	#footer .footer_top .col_candidate.has_person .text {
		padding:64px 32px;
	}
	
	#footer .footer_top .col_candidate.has_person .text .headline {
		font-size:2.2em;
	}
	
	#footer .footer_top .col_candidate.has_person .text .subline {
		font-size:1.2em;
	}
	
	#footer .footer_top .col_liberal .text {
		font-size:1.2em;
	}
	
	#footer .footer_bot {
		padding-bottom:50px;
	}
	
	/* ---------------- home ---------------- */
	
	/*#home_feature .row_top {
		min-height:840px;
	}*/
	
	#home_feature .row_top .feature_headline {
		width:60%;
		max-width: 600px;
		font-size:4.6em;
	}
	
	#home_feature .row_top .feature_headline img {
		width:500px;
	}
	
	#home_feature .row_headshot {
		
	}
	
	#home_feature .row_headshot img {

	}
	
	#home_key .boxes {
		min-height:500px;
	}
		
	#home_key .boxes .box .headline {
		font-size:2.4em;
	}
	
	#home_key .boxes .box .line {
		width:160px;
		height:12px;
		margin-top:48px;
	}
	
	#home_candidates .cols .col_text {
		max-width:512px;
	}
	
	#home_values .fg {
		min-height:768px;
	}
	
	#home_vision .fg {
		min-height:768px;
	}
		
	/* ---------------- policies ---------------- */
	
	#t22_policy_feature .fg {
		min-height:480px;
	}
	
	#t22_policy_feature .headline {
		font-size:3.8em;
	}
	
	#t22_policy_main .section_headline {
		font-size:2em;
	}
	
	#t22_policy_main p,
	#t22_policy_main li {
		font-size:1.2em;
	}
	
	#t22_policy_main li {
		margin:12px 0;
	}
	
	#t22_policy_main .col_right {
		margin-left:160px;
	}
	
	#t22_policy_extra {
		min-height:768px;
	}
	
	#t22_policy_extra .text .large {
		font-size:1.8em;
	}
	
	/* -------- */
	
	.policy_list.small_boxes .item.small_box .fg {
		padding:40px;
	}
	
	.policy_list.small_boxes .item.small_box .headline {
		font-size:2em;
	}
	
	/* -------- */
	
	.policy_list.large_boxes {
		
	}
	
	.policy_list.large_boxes .item .image {
		height:384px;
	}
	
	.policy_list.large_boxes .item .text {
		padding:32px;
	}
	
	.policy_list.large_boxes .item .text .headline {
		font-size:1.6em;
	}
	
	.policy_list.large_boxes .item .text .tags {
		margin-top:16px;
	}
	
	.policy_list.large_boxes .item .text .text_bot {
		margin-top:24px;
	}
	
	/* -------- */
	
	.policy_filter {
		
	}
	
	/* ---------------- candidates ---------------- */
	
	#find_candidate .team_list .person .long_name {
		font-size:1.8em;
	}
		
	#find_candidate .team_list .person .roles .role {
		font-size:1.4em;
	}
	
	/* ---- candidate entry ---- */
	
	#t22_candidate {
		
	}
	
	#t22_candidate_feature {
		margin-bottom:32px;
	}
	
	#t22_candidate_feature .col_image {
		width:35%;
	}
	
	#t22_candidate_feature .col_text {
		padding:160px 128px;
	}
	
	#t22_candidate_feature .candidate_headline .name {
		font-size:4em;
	}
	
	#t22_candidate_feature .branding {
		padding:32px;
		width:320px;
		height:320px;
	}
	
	#t22_candidate_feature .branding .logo {
		width:192px;
	}
	
	#t22_candidate_ask {
		margin-bottom:32px;
	}
	
	#t22_candidate_ask .question {
		font-size:2.2em;
	}
	
	#t22_candidate_about {
		padding:96px;
	}
	
	#t22_candidate_about .col_actions {
		padding-right:96px;
	}
	
	#t22_candidate_about .col_actions .long_buttons .action {
		font-size:1.2em;
	}
		
	#t22_candidate_about .col_policies {
		padding-left:96px;
	}
	
	#t22_candidate_about .col_policies .section_headline {
		font-sizt:1.8em;
	}
	
	#t22_candidate_about .col_policies .tick_items li {
		font-size:1.2em;
		line-height:130%;
	}
	
	#t22_candidate_about .col_policies .tick_items li .icon {
		width:32px;
		margin-right:16px;
	}
		
	#t22_candidate_about .col_policies .tick_items li .icon img {
		max-width:32px;
		max-height:32px;
	}
	
	.home_feature_slider {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
  overflow: hidden;
  margin-top: 1rem; /* spacing under nav */
}

.home_feature_slider .slides {
  position: relative;
  width: 100%;
  height: 100%;
}

.home_feature_slider .slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity 0.8s ease-in-out;
}

.home_feature_slider .slide.active {
  opacity: 1;
  z-index: 1;
}

.home_feature_slider img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.home_feature_slider .overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #fff;
  text-shadow: 0 2px 5px rgb
	}
	
.home_feature_slider .slide .overlay h2 {
  font-size: 4.0rem; /* adjust size as needed */
  line-height: 1.2;  /* optional: tighter spacing */
}
	
/* Base image state */
.home_feature_slider .slide img {
  transform: scale(1);
  transition: transform 12s ease-out; /* controls zoom speed */
  will-change: transform;
}

/* Zoom image while slide is active */
.home_feature_slider .slide.active img {
  transform: scale(1.05) translateY(-2%); /* adjust zoom amount */
}	

	
/* Keep body and html reset */
html, body {
  margin: 0;
  padding: 0;
}

/* Ensure the header stays on top but aligns with the container */
.header_wrap.absolute {
  position: absolute;  /* keeps it on top */
  top: 0;
  left: 50%;           /* center horizontally */
  transform: translateX(-50%); /* center relative to width */
  width: 100%;
  max-width: 1600px;   /* match your .site_maxwidth width */
  z-index: 9999;
}

/* Ensure the site content wrapper centers like before */
.site_maxwidth {
  margin: 0 auto;      /* centers horizontally */
  padding: 0;
}

/* Remove extra spacing above slider */
#home_feature,
.home_feature_slider {
  margin-top: 0;
  padding-top: 0;
}

@media screen and (max-width: 1024px) {
  .home_feature_slider .slide .overlay h2 {
    font-size: 2rem;
  }
  .home_feature_slider .nav {
    font-size: 1.8rem;
    padding: 0.4rem 0.8rem;
  }
}

@media screen and (max-width: 768px) {
  .home_feature_slider .slide .overlay h2 {
    font-size: 1.6rem;
  }
  .home_feature_slider .nav {
    font-size: 1.5rem;
    padding: 0.3rem 0.6rem;
  }
}

@media screen and (max-width: 480px) {
  .home_feature_slider .slide .overlay h2 {
    font-size: 1.2rem;
  }
  .home_feature_slider .nav {
    font-size: 1.2rem;
    padding: 0.25rem 0.5rem;
  }
  .home_feature_slider .dots {
    bottom: 5px;
  }
}
	
	/* Slider CTA button */
.slider-cta {
  position: absolute;
  bottom: 100px;               /* distance from bottom of slider */
  left: 50%;
  transform: translateX(-50%);
  z-index: 20;

  padding: 14px 32px;
  background: rgba(105, 210, 241, 0.8); /* tweak to brand blue */
  color: #fff;
  text-decoration: none;
  font-weight: 700;
  font-size: 1.5rem;
  letter-spacing: 0.03em;
  border-radius: 999px;
  transition: background 0.3s ease, transform 0.3s ease;
}

/* Hover / focus */
.slider-cta:hover {
  background: rgba(0, 44, 78, 1);
  transform: translateX(-50%) translateY(-2px);
}

/* Mobile adjustment */
@media (max-width: 768px) {
  .slider-cta {
    bottom: 30px;
    padding: 12px 24px;
    font-size: 0.9rem;
  }
}
	
.highlight-blue {
  color: #71CFEC;
}
	
.highlight-dkblue {
  color: #00264f;
}
	
	/* - - - - - - new mobile slider - - - - - -  */
	
#isolated_header_slider {
  position: relative;
  width: 100%;
  height: 100vh; /* desktop full height */
  overflow: hidden;
}

#isolated_header_img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover; /* image fills container */
  z-index: 1;
}

#isolated_header_content {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between; /* tagline top, CTA bottom */
  align-items: center;
  z-index: 2;
  padding: 20px;
  box-sizing: border-box;
}

#isolated_tagline {
  margin-top: 20px;
  color: white;
  text-align: center;
  font-size: 3rem;
}

#isolated_cta {
  margin-bottom: 20px;
  background-color: rgba(113, 207, 236, 0.7);
  color: black;
  text-decoration: none;
  padding: 12px 30px;
  border-radius: 6px;
  font-weight: bold;
}

/* Mobile */
@media (max-width: 768px) {
  #isolated_header_slider {
    height: 400px !important; /* force fixed height on mobile */
  }
  #isolated_tagline {
    font-size: 2rem;
  }
  #isolated_cta {
    font-size: 1rem;
    padding: 10px 20px;
  }
}
		
	/* ---------------- about ---------------- */
	
	/* ---------------- votehelper ---------------- */
	
	/* ---------------- contact ---------------- */
	
	/* ---------------- preferences ---------------- */
	
	.pref_list {
		
	}
	

		
	@keyframes fadeInAnimation{
		from{opacity: 0;}
		to{opacity:1;}
	}
	

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */
