/* Contact Us — match new layout (legal / account chrome). */
body.gst-contact{background:var(--bg-soft,#F7F8FC);}
body.gst-contact .wrapper{padding-top:0;}
body.gst-contact .inner-banner,
body.gst-contact .mid-container > .contact-page{display:none !important;}
body.gst-contact header#siteHeader .logo,
body.gst-contact header#siteHeader .logo img{background:transparent !important;}
body.gst-contact .enquire-dock{display:none;}

.gst-contact .page-hero{position:relative;background:linear-gradient(120deg,var(--navy) 0%,#1B2260 100%);padding:56px 0 50px;overflow:hidden;}
.gst-contact .page-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(420px 220px at 12% 20%, rgba(216,31,38,.25), transparent 70%),radial-gradient(360px 220px at 90% 110%, rgba(255,255,255,.08), transparent 70%);}
.gst-contact .page-hero .in{position:relative;z-index:1;}
.gst-contact .page-hero h1{color:#fff;font-size:34px;margin:0;}
.gst-contact .page-hero .crumb{margin-top:12px;font-size:13.5px;font-weight:600;color:rgba(255,255,255,.65);display:flex;gap:8px;align-items:center;}
.gst-contact .page-hero .crumb a{color:rgba(255,255,255,.65);}
.gst-contact .page-hero .crumb a:hover{color:#fff;}
.gst-contact .page-hero .crumb b{color:#fff;font-weight:700;}

.contact-body{padding:56px 0 90px;}
.contact-layout{display:grid;grid-template-columns:minmax(260px,.9fr) 1.2fr;gap:28px;align-items:start;}
.contact-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:0 20px 44px -30px rgba(18,23,63,.2);padding:36px 36px 40px;}
.contact-card h3{font-size:22px;margin:0 0 22px;color:var(--navy);font-weight:700;}

.contact-address{font-size:15px;color:var(--navy-soft);line-height:1.75;}
.contact-address p{margin:0 0 18px;position:relative;padding-left:40px;}
.contact-address ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:16px;}
.contact-address li{position:relative;padding-left:40px;font-size:14.5px;color:var(--navy-soft);line-height:1.7;}
.contact-address p::before,
.contact-address li::before{
	content:'';
	position:absolute;
	left:0;
	top:0;
	width:28px;
	height:28px;
	border-radius:8px;
	background:var(--bg-soft,#F7F8FC);
	background-repeat:no-repeat;
	background-position:center;
	background-size:15px 15px;
	border:1px solid var(--line);
}
.contact-address p::before{
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%23D81F26' stroke-width='1.8' viewBox='0 0 24 24'%3E%3Cpath d='M12 21s7-6.2 7-11a7 7 0 1 0-14 0c0 4.8 7 11 7 11z'/%3E%3Ccircle cx='12' cy='10' r='2.2'/%3E%3C/svg%3E");
}
.contact-address li::before{
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%23D81F26' stroke-width='1.8' viewBox='0 0 24 24'%3E%3Cpath d='M6.5 3.5h3L11 7.5 9 9.5a12 12 0 0 0 5.5 5.5l2-2 4 1.5v3c0 .8-.7 1.5-1.6 1.5C10.2 19 5 13.8 5 5.1 5 4.2 5.7 3.5 6.5 3.5z'/%3E%3C/svg%3E");
}
.contact-address li:has(a[href^='mailto'])::before{
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%23D81F26' stroke-width='1.8' viewBox='0 0 24 24'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3 7 9 6 9-6'/%3E%3C/svg%3E");
}
.contact-address a{color:var(--red);font-weight:600;}
.contact-address a:hover{text-decoration:underline;text-underline-offset:2px;}
.contact-address strong,
.contact-address b,
.contact-address h4{color:var(--navy);font-weight:700;}
.contact-login-note{margin:-8px 0 22px;font-size:14.5px;color:var(--navy-soft);line-height:1.6;}
.contact-login-note a,
.contact-login-note .login-btn{color:var(--red);font-weight:700;text-decoration:none;}
.contact-login-note a:hover,
.contact-login-note .login-btn:hover{text-decoration:underline;text-underline-offset:2px;}

.lets-talk-form .gst-req{color:var(--red);font-weight:700;margin-left:2px;}
.lets-talk-form .wpcf7 p{margin:0 0 14px;}
.lets-talk-form .wpcf7 br{display:none;}
.lets-talk-form label{display:block;font-size:12.5px;font-weight:700;color:var(--navy);margin:0 0 8px;letter-spacing:.02em;}
.lets-talk-form .wpcf7-form-control-wrap{display:block;}
.lets-talk-form input[type=text],
.lets-talk-form input[type=email],
.lets-talk-form input[type=tel],
.lets-talk-form input[type=url],
.lets-talk-form textarea,
.lets-talk-form select,
.lets-talk-form .form-control{
	width:100%;
	box-sizing:border-box;
	border:1px solid var(--line);
	border-radius:12px;
	padding:12px 14px;
	margin:0;
	font-family:'Lato',sans-serif;
	font-size:14.5px;
	color:var(--navy);
	background:#fff;
	box-shadow:none;
	height:auto;
}
.lets-talk-form textarea,
.lets-talk-form textarea.form-control{min-height:120px;resize:vertical;}
.lets-talk-form input:focus,
.lets-talk-form textarea:focus,
.lets-talk-form select:focus,
.lets-talk-form .form-control:focus{
	outline:0;
	border-color:var(--navy);
	box-shadow:0 0 0 3px rgba(18,23,63,.08);
}
.lets-talk-form input.wpcf7-submit,
.lets-talk-form .wpcf7-submit,
.lets-talk-form input[type=submit],
.lets-talk-form .form-control.btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:auto;
	min-width:160px;
	margin-top:8px;
	padding:14px 28px;
	border:none;
	border-radius:99px;
	background:var(--red);
	color:#fff;
	font-weight:700;
	font-size:14.5px;
	letter-spacing:.02em;
	cursor:pointer;
	transition:.25s ease;
	height:auto;
}
.lets-talk-form input.wpcf7-submit:hover,
.lets-talk-form .wpcf7-submit:hover,
.lets-talk-form input[type=submit]:hover{
	background:var(--red-dark,#b81a20);
	transform:translateY(-1px);
}
.lets-talk-form .wpcf7-not-valid-tip{font-size:12.5px;color:var(--red);margin:6px 0 0;font-weight:600;}
.lets-talk-form .wpcf7-form .wpcf7-response-output{
	grid-column:1 / -1;
	width:100%;
	max-width:100%;
	box-sizing:border-box;
	margin:16px 0 0;
	padding:12px 14px;
	border-radius:12px;
	font-size:13.5px;
	border:1px solid var(--line);
}
.lets-talk-form .wpcf7-validation-errors,
.lets-talk-form .wpcf7-mail-sent-ng{border-color:var(--red);color:var(--red);background:#FDECEC;}
.lets-talk-form .wpcf7-mail-sent-ok{border-color:#1FA971;color:#157a4c;background:#E9F8F1;}
.lets-talk-form .wpcf7-spinner{margin-left:10px;}
.lets-talk-form .wpcf7-form.submitting .wpcf7-submit,
.lets-talk-form .wpcf7-form[data-gst-locked="1"] .wpcf7-submit{opacity:.65;pointer-events:none;cursor:not-allowed;}
.lets-talk-form .wpcf7-form-control-wrap .wpcf7-not-valid-tip ~ .wpcf7-not-valid-tip{display:none !important;}
.lets-talk-form .wpcf7-form{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:0 16px;
	align-items:start;
}
.lets-talk-form .wpcf7-form > p{grid-column:1 / -1;}
.lets-talk-form .wpcf7-form > p:has([data-name="your-number"]),
.lets-talk-form .wpcf7-form > p:has([data-name="text-63"]){
	grid-column:auto;
	min-width:0;
}

@media (max-width:980px){
	.contact-layout{grid-template-columns:1fr;}
	.contact-card{padding:28px 22px;}
}
@media (max-width:640px){
	.gst-contact .page-hero h1{font-size:26px;}
	.lets-talk-form .wpcf7-form{grid-template-columns:1fr;}
	.lets-talk-form .wpcf7-form > p:has([data-name="your-number"]),
	.lets-talk-form .wpcf7-form > p:has([data-name="text-63"]){grid-column:1 / -1;}
}
