*,*::before,*::after{box-sizing:border-box}
		html,body{min-height:100%;margin:0}
		body{
			min-height:100vh;
			background-color:var(--wpts-immcs-bg);
			background-size:cover;
			background-position:center;
			background-repeat:no-repeat;
			color:var(--wpts-immcs-text);
		}
		.wpts-immcs-page{
			min-height:100vh;
			display:flex;
			flex-direction:column;
			padding:clamp(20px,3vw,40px);
		}

		/* ---- header ---- */
		.wpts-immcs-topbar{
			display:flex;
			align-items:center;
			justify-content:space-between;
			gap:16px;
			flex-wrap:wrap;
		}
		.wpts-immcs-logo{max-width:220px;max-height:64px;object-fit:contain}
		.wpts-immcs-topbar__right{
			display:flex;
			align-items:center;
			gap:14px;
			flex-wrap:wrap;
		}
		.wpts-immcs-tag{
			display:inline-flex;
			align-items:center;
			gap:8px;
			padding:7px 14px;
			border-radius:999px;
			border:1px solid var(--wpts-immcs-border);
			background:rgba(0,0,0,.28);
			font-size:.72rem;
			letter-spacing:.12em;
			text-transform:uppercase;
			color:#fff;
		}
		.wpts-immcs-tag__dot{
			width:7px;height:7px;border-radius:50%;
			background:var(--wpts-immcs-accent);
		}
		.wpts-immcs-countdown{
			display:flex;
			align-items:center;
			gap:10px;
			flex-wrap:wrap;
			color:#fff;
			font-size:.95rem;
			font-weight:600;
		}
		.wpts-immcs-countdown__unit{display:inline-flex;align-items:baseline;gap:4px}
		.wpts-immcs-countdown__number{font-variant-numeric:tabular-nums}
		.wpts-immcs-countdown__label{
			font-size:.78rem;
			font-weight:500;
			opacity:.85;
			text-transform:lowercase;
		}

		/* ---- hero ---- */
		.wpts-immcs-hero{
			flex:1;
			display:flex;
			flex-direction:column;
			justify-content:center;
			max-width:680px;
			padding:clamp(28px,6vh,64px) 0;
		}
		.wpts-immcs-title{
			margin:0 0 16px;
			font-size:clamp(2.4rem,6vw,4.4rem);
			line-height:1.05;
			letter-spacing:-.035em;
			font-weight:800;
			color:var(--wpts-immcs-title);
		}
		.wpts-immcs-title__accent{
			display:block;
			color:var(--wpts-immcs-accent);
		}
		.wpts-immcs-subtitle{
			margin:0 0 14px;
			font-size:clamp(1rem,1.5vw,1.2rem);
			line-height:1.45;
			color:var(--wpts-immcs-title);
		}
		.wpts-immcs-description{
			margin:0;
			font-size:.98rem;
			line-height:1.65;
			color:var(--wpts-immcs-description);
			max-width:42em;
		}
		.wpts-immcs-description p{margin:0 0 .8em}
		.wpts-immcs-description p:last-child{margin-bottom:0}
		.wpts-immcs-description strong{color:var(--wpts-immcs-title);font-weight:700}

		/* ---- dock card ---- */
		.wpts-immcs-dock{
			display:grid;
			grid-template-columns:minmax(220px,.9fr) minmax(280px,1.2fr);
			gap:clamp(18px,3vw,36px);
			align-items:center;
			width:100%;
			max-width:960px;
			padding:clamp(18px,2.5vw,28px);
			border-radius:28px;
			border:1px solid var(--wpts-immcs-border);
			background:var(--wpts-immcs-card-bg);
			backdrop-filter:blur(16px);
			-webkit-backdrop-filter:blur(16px);
		}
		.wpts-immcs-dock__aside{display:flex;flex-direction:column;gap:14px}
		.wpts-immcs-form-tabs{
			display:inline-flex;
			gap:8px;
			flex-wrap:wrap;
		}
		.wpts-immcs-form-tab{
			padding:11px 20px;
			border-radius:999px;
			border:1px solid var(--wpts-immcs-border);
			background:transparent;
			color:#fff;
			font-size:.92rem;
			cursor:pointer;
			transition:background .2s,border-color .2s,color .2s;
			line-height: normal;
		}
		.wpts-immcs-form-tab--active,
		.wpts-immcs-form-tab:hover{
			background:var(--wpts-immcs-accent);
			border-color:var(--wpts-immcs-accent);
			color:var(--wpts-immcs-on-accent);
		}
		.wpts-immcs-form-hint{
			margin:0;
			font-size:.84rem;
			line-height:1.5;
			color:rgba(255,255,255,.62);
			max-width:28em;
		}
		.wpts-immcs-form-panel{display:none}
		.wpts-immcs-form-panel--active{display:block}
		.wpts-immcs-form{display:flex;flex-direction:column;gap:12px}
		.wpts-immcs-form input[type="text"],
		.wpts-immcs-form input[type="email"],
		.wpts-immcs-form textarea{
			width:100%;
			padding:14px 16px;
			border-radius:12px;
			border:1px solid var(--wpts-immcs-border);
			background:rgba(0,0,0,.35);
			color:#fff;
			font-size:.94rem;
			line-height: normal;
  			height: auto;
		}
		.wpts-immcs-form textarea{min-height:96px;resize:vertical}
		.wpts-immcs-form input::placeholder,
		.wpts-immcs-form textarea::placeholder{color:rgba(255,255,255,.42)}
		.wpts-immcs-form input:focus,
		.wpts-immcs-form textarea:focus{
			outline:none;
			border-color:var(--wpts-immcs-accent);
		}
		.wpts-immcs-form__inline{
			display:grid;
			grid-template-columns:minmax(0,1fr) auto;
			gap:10px;
			align-items:stretch;
		}
		.wpts-immcs-gdpr{
			display:flex;
			align-items:flex-start;
			gap:10px;
			font-size:.8rem;
			line-height:1.5;
			color:rgba(255,255,255,.78);
		}
		.wpts-immcs-gdpr input{
			margin-top:3px;
			flex-shrink:0;
			accent-color:var(--wpts-immcs-accent);
		}
		.wpts-immcs-btn{
			display:inline-flex;
			align-items:center;
			justify-content:center;
			gap:8px;
			padding:14px 20px;
			border:0;
			border-radius:999px;
			background:var(--wpts-immcs-accent);
			color:var(--wpts-immcs-on-accent);
			font-size:.94rem;
			font-weight:600;
			cursor:pointer;
			white-space:nowrap;
			transition:opacity .2s;
			line-height: normal;
		}
		.wpts-immcs-btn:hover{opacity:.92}
		.wpts-immcs-btn:disabled{opacity:.5;cursor:not-allowed}
		.wpts-immcs-btn__arrow{font-size:1.1em;line-height:1}
		.wpts-immcs-btn--block{width:100%}
		.wpts-immcs-form-msg{
			display:none;
			padding:10px 12px;
			border-radius:10px;
			font-size:.86rem;
		}
		.wpts-immcs-form-msg--success{background:#edfdf1;color:#107c41;border:1px solid #c9f2d4}
		.wpts-immcs-form-msg--error{background:#fef2f2;color:#c62828;border:1px solid #fecaca}

		/* ---- footer ---- */
		.wpts-immcs-bottombar{
			display:flex;
			align-items:center;
			justify-content:space-between;
			gap:16px;
			margin-top:18px;
			flex-wrap:wrap;
		}
		.wpts-immcs-footer{font-size:.8rem;color:var(--wpts-immcs-footer)}
		.wpts-immcs-social{display:flex;gap:10px;flex-wrap:wrap}
		.wpts-immcs-social__link{
			display:inline-flex;
			align-items:center;
			justify-content:center;
			width:36px;height:36px;
			border-radius:50%;
			border:1px solid var(--wpts-immcs-border);
			color:#fff;
			text-decoration:none;
			transition:border-color .2s,background .2s,color .2s;
		}
		.wpts-immcs-social__link:hover{
			border-color:var(--wpts-immcs-accent);
			background:var(--wpts-immcs-accent);
			color:var(--wpts-immcs-on-accent);
		}

		@media (max-width:860px){
			.wpts-immcs-dock{grid-template-columns:1fr}
			.wpts-immcs-form__inline{grid-template-columns:1fr}
		}
		@media (max-width:560px){
			.wpts-immcs-title__accent{display:inline}
		}
