:root{
	--brand-red:#C60800;
	--text:#ffffff;
	--muted:#d0d0d0;
	--btn:#C60800;
	--btn-hover:#C60800;
	--bg:#000;
	--maxw:1100px;
	--shadow: 0 1px 2px rgba(0,0,0,.25), 0 6px 24px rgba(0,0,0,.35);
	--radius: 8px;
}

*{box-sizing:border-box}

html,body{height:100%}

body{
	margin:0; font-family:'neue-haas-grotesk-display', sans-serif; color:var(--text); background: var(--bg); line-height:1.4; 
}

/* Top bar */
.cacs-topbar{
	background:var(--brand-red);
	display:flex;
	align-items:center;
	justify-content:center;
	position:sticky;
	top:0;
	z-index:5;
	padding: 15px 0;
}
.cacs-topbar svg{display:block; }
.cacs-wordmark{
	font-family: 'neue-haas-grotesk-display', sans-serif;
	letter-spacing:.5px;
	font-weight:700;
	font-size: clamp(20px, 4.5vw, 36px);
	color:#fff;
	text-transform:uppercase;
	text-shadow: 0 2px 0 rgba(0,0,0,.2);
}

/* Hero section */
.cacs-hero{
	position: relative;
    min-height: calc(100dvh - 85px);
    display: flex;
    align-items: start;
    justify-content: center;
    overflow: hidden;
    isolation: isolate;
    padding: 60px 15px 0;
}

/* Background image + overlays */
.cacs-wrapper::before{
	content:"";
	position:absolute; inset:0;
	/*background-image: url('https://assets.nypost.com/zephr/images/cacs/bg.jpg');*/
	background-size:cover;
	background-position:center 0;
	filter: saturate(1.05) contrast(1.05);
	z-index:-2;
	/*transform:scale(1.02);*/
	background-color: #000;

}
.cacs-wrapper::after{
	/*
	content:"";
	position:absolute; inset:0;
	z-index:-2;
	background-image:linear-gradient(
    to bottom,
    rgba(0,0,0,0) 30%,   /* top stays transparent */
    rgba(0,0,0,0.7) 60%, /* middle is the bulk of the fade */
    rgba(0,0,0,1) 100%   /* bottom is solid black */
  /*);*/
}
.cacs-wrapper {position:relative;z-index: 9999999999999999;overflow: hidden; }
.cacs-container{
	width:100%;
	max-width:var(--maxw);
	margin-inline:auto;
	padding: clamp(16px, 3vw, 32px);
	padding:0;
}

.cacs-stack{
	margin-block: clamp(28px, 5vw, 52px);
    text-align: center;
    margin: 0 auto;
    max-width: 780px; 
    border-radius: 16px;
    background: rgba(0, 0, 0, 0.25);
    backdrop-filter: blur(12px);
    padding: 35px 16px;
    flex-direction: column;
    align-items: center;
}

.cacs-wrapper h2 {
	color: #FFF;
	text-align: center;
	font-size: 75px;
	font-style: normal;
	font-weight: 700;
	line-height: normal; /* 128% */
	letter-spacing: -3px;
	    margin-bottom: 0;
}

.cacs-wrapper h1{
	font-weight: 700;
    font-size: clamp(32px, 6vw, 64px);
    line-height: 1.05;
    margin: 10px 0 15px;
    text-shadow: 0 3px 18px rgba(0, 0, 0, .55);
    color: #FFF;
    text-align: center;
    font-size: 50px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    letter-spacing: -2.25px;
}
.cacs-wrapper h1 br {display:none;}

.cacs-subhead{
	font-size: clamp(16px, 2.4vw, 24px);
    opacity: .95;
    text-shadow: 0 2px 12px rgba(0, 0, 0, .6);
    color: var(--Neutrals-Gray-200, #E9E9E9);
    text-align: center;
    max-width: 525px;
    margin: 0 auto 30px;
    font-size: 26px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: -1.05px;
}

/* Form */
.cacs-signup{
	width:100%;
	max-width: 490px;
	margin: 0 auto 0;
}
.cacs-signup div {
	display:flex;
	gap:0;
	align-items:stretch;
}
.cacs-signup p {
	color: var(--Neutrals-Gray-200, #E9E9E9);
	text-align: center;
	margin-bottom: 20px;
	
	
	font-size: 24px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	letter-spacing: -0.96px;
}

.cacs-signup div.cacs-success {
	display: flex;
	width: 100%;
	height: 108px;
	padding: 16px 20px;
	justify-content: center;
	align-items: center;
	gap: 4px;
	flex-shrink: 0;
	border-radius: 8px;
	background: rgba(246, 246, 246, 0.20);
	margin:0 auto 5%;
}
.cacs-signup div.cacs-success:after {
	content: "Thanks for signing up!";
	display: inline-block;
	color: #FFF;
	text-align: center;
	font-size: 20px;
	font-style: normal;
	font-weight: 600;
	line-height: 22px;
	font-family: var(--wp--custom--font--accent);
	background: url(https://assets.nypost.com/zephr/images/cacs/check.png) no-repeat left center;
	background-size: auto 100%;
	padding-left: 30px;
}

.cacs-field{
	position:relative;
	flex:1;
}
.cacs-field input{
	width: 100%;
	height: 50px;
	border-radius: var(--radius) 0 0 var(--radius);
	border: 1px solid rgba(255, 255, 255, .25);
	background: #fff;
	color: var(--text-dark-secondary, rgba(26, 26, 26, 0.70));
	padding: 0 16px 0 16px;
	font-size: 16px;
	outline: none;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .05);
	transition: border-color .2s, background .2s, box-shadow .2s;
	backdrop-filter: blur(4px);
	border-right: 0;
	margin:0;
}
.cacs-field input::placeholder{
	color: var(--text-dark-secondary, rgba(26, 26, 26, 0.70)); opacity:.9
}
.cacs-field input:focus{
	border-color:#fff;
	background: rgba(0,0,0,.25);
	box-shadow: 0 0 0 3px rgba(255,255,255,.18);
	color:#fff;
}

.cacs-btn{
	height:50px;
	border:none;
	border-radius: 0 var(--radius) var(--radius) 0;
	padding: 0 22px;
	letter-spacing:.3px;
	text-transform:uppercase;
	background: var(--btn);
	cursor:pointer;
	box-shadow: var(--shadow);
	transition: transform .06s ease, background .15s ease;
	white-space:nowrap;
	color: var(--text-light-primary, #FFF);
	text-align: center;
	font-size: var(--font-size-xl, 20px);
	font-style: normal;
	font-weight: 600;
	line-height: var(--line-height-xl, 32px); 
}
.cacs-btn:hover{ background:var(--btn-hover) }
.cacs-btn:active{ transform: translateY(1px) }

.cacs-legal{
	max-width:490px;
	margin: 15px auto 0;
	color: #fff;
	font-size:12px;
}
.cacs-legal a {
	color:#fff; 
	text-underline-offset: 2px; 
    text-decoration: underline;
}

.badge-wrapper {text-align:center; margin-bottom: 15px;}
.cacs-badge{
	    background: rgba(0, 0, 0, .75);
    color: #fff;
    border-radius: 999px;
    box-shadow: var(--shadow);
    backdrop-filter: blur(4px);
    display: inline-block;
    text-decoration: none;
    display: inline-flex;
    padding: 8px 12px 6px 12px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.25);
    text-align: center;
    font-size: 20px;
font-style: normal;
font-weight: 700;
line-height: 14px; /* 70% */
    margin-bottom: 0;
	
	border-radius: 8px;
	background: rgba(0, 0, 0, 0.75);
}
.cacs-badge span {
	border-bottom: 1px solid #fff;
	display: inline-block;
	padding-bottom: 7px;
	
	
}
.cacs-badge:hover{ background:var(--brand-red); }

.cacs-note{
	font-size: 14px;
	color: #ffd3d3;
	line-height: 28px;
}

.cacs-footer {  
	padding-top:8px;  
	text-align: center;position:relative;
	background: rgba(0, 0, 0, 0.50);
	backdrop-filter: blur(12px);
}
.cacs-topline {
	color: #FFF;
	font-family: Arial;
	font-size: 12px;
	font-style: normal;
	font-weight: 400;
	line-height: 14px;
	text-transform: capitalize;    
	margin-bottom: 8px;
}	 
.cacs-topline a,
.cacs-midline a {color:#fff; text-decoration:none;}
.cacs-midline {
	color: #FFF;
	text-align: center;
	font-family: Arial;
	font-size: 12px;
	font-style: normal;
	font-weight: 700;
	line-height: 14px;
	text-transform: capitalize;    
	margin-bottom: 8px;
}

.cacs-bottomline img { height:36px; width:auto; }

@media (min-width: 1710px) { /* 1920 */
    .cacs-wrapper::before {
        background-position: center 0;
    }
}
@media (min-width: 1441px){
	.cacs-wrapper::before{
		background-image: url('../images/bg-1920.jpg'); 
		background-position: center 0;
	}
}
@media (max-width: 1440px){
	.cacs-wrapper::before{
		background-image: url('../images/bg-1440.jpg'); 
	}
}

@media (max-width: 1190px){ 
	.cacs-wrapper::before {
        background-position: center 0;
    }
}
@media (max-width: 850px){
	.cacs-stack {padding:32px 16px;}
	.cacs-wrapper h2 {font-size:48px;line-height: normal;letter-spacing: -1.44px;}
	.cacs-wrapper h1 {font-size:42px;line-height: 41px; /* 97.619% */letter-spacing: -1.26px;margin:20px 0;}
	.cacs-wrapper h1 br {display:block;}
	.cacs-subhead {font-size:22px;line-height: normal;letter-spacing: -0.66px;margin-bottom:40px;}
	.cacs-signup p {font-size:20px;line-height: normal;letter-spacing: -0.6px;margin-bottom:12px;}
	
	.cacs-legal {margin-top:12px;}
	
	.cacs-wrapper::before{
		background-image: url('../images/bg-1024.jpg'); 
		background-position: center 0;
	}
}
@media (max-width: 699px) {
    .cacs-wrapper::before {
        background-position: center 0;
    }
}
@media (max-width: 500px) {
	
    .cacs-wrapper::before {
        background-position: center 0;
		background-image: url(../images/bg-mobile.jpg);
    }
	
	.cacs-stack {
        padding-top: 100px;
    }
	.cacs-footer {
 	   /*margin-top: 30%;*/
	}
}


/* Tablet portrait (broad) */
@media (min-width: 600px) and (max-width: 1024px) and (orientation: portrait) and (hover: none) and (pointer: coarse) {
	.cacs-wrapper::before{
		background-image: url(../images/bg-1024.jpg);
        background-position: center 0;
	}
}

/* Tablet landscape (broad) */
@media (min-width: 900px) and (max-width: 1366px) and (orientation: landscape) and (hover: none) and (pointer: coarse) {
	.cacs-wrapper::before{
		background-image: url(../images/bg-tablet-landscape.jpg);
        background-position: center 0;
	}
	
	.cacs-stack {padding:32px 16px;}
	.cacs-wrapper h2 {font-size:48px;line-height: normal;letter-spacing: -1.44px;}
	.cacs-wrapper h1 {font-size:42px;line-height: 41px; /* 97.619% */letter-spacing: -1.26px;margin:20px 0;}
	.cacs-wrapper h1 br {display:block;}
	.cacs-subhead {font-size:22px;line-height: normal;letter-spacing: -0.66px;margin-bottom:40px;}
	.cacs-signup p {font-size:20px;line-height: normal;letter-spacing: -0.6px;margin-bottom:12px;}
	
	.cacs-legal {margin-top:12px;}
}
	 
	 
/* RESPONSIVE */
@media (max-width: 720px){
	.cacs-wrapper::before {
		/*background-image: url(https://assets.nypost.com/zephr/images/cacs/bg-mobile.jpg);*/
		background-repeat: no-repeat;
	}
	.cacs-topbar svg { height: 30px; }

	.cacs-stack { padding-top: 60px; }

	/* .cacs-hero{ align-items:center } */
	.cacs-hero {
		min-height: calc(100dvh - 53px);
		padding: 0 15px;
	}
	.cacs-stack{ margin-block: 28px }
	.cacs-signup{ flex-direction:column; }
	.cacs-btn{ padding: 0 10px;}
	.cacs-badge{ font-size: 16px; padding: 8px 12px; }

	.cacs-wrapper h1{    
		font-size: 42px;
		line-height: 41px;
		letter-spacing: -1.26px;
	}
	.cacs-wrapper h1 br {display:block;}

	.cacs-subhead {
        font-size: 20px;
        font-weight: 500;
        line-height: normal;
        letter-spacing: -0.66px;
        margin-bottom: 30px;
        padding-top: 10px;
	}

	.cacs-signup p {
		font-size: 20px;
		font-style: normal;
		font-weight: 600;
		line-height: normal;
		letter-spacing: -0.6px;
		margin-bottom: 12px;
	}

	.cacs-legal {
		font-size: 11px;
		margin-top: 12px;
	}
	.cacs-wrapper { background: #000; }
	.cacs-signup div.cacs-success {
		width:auto;height:auto;padding:30px;
	}
}

/* Extra-small */
@media (max-width: 380px){
	.cacs-topbar{ height:56px }
	.cacs-hero{ min-height: calc(100vh - 53px) }
	.cacs-field input{ height:44px }
	.cacs-btn{ height:44px;font-size: 16px; }
	
	.cacs-stack {padding:32px 16px;}
	.cacs-wrapper h2 {font-size:43px;line-height: normal;letter-spacing: -1.44px;}
	.cacs-wrapper h1 {font-size:40px;line-height: 41px; /* 97.619% */letter-spacing: -1.26px;margin:20px 0;}
	.cacs-wrapper h1 br {display:block;}
	.cacs-subhead {font-size:22px;line-height: normal;letter-spacing: -0.66px;margin-bottom:40px;}
	.cacs-signup p {font-size:20px;line-height: normal;letter-spacing: -0.6px;margin-bottom:12px;}
	
	.cacs-legal {margin-top:12px;}
	.cacs-wrapper {height: calc(100vh + 162px);}
}