html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video {
border:0;
font:inherit;
font-size:100%;
margin:0;
padding:0;
vertical-align:baseline;
}

article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {
display:block;
}

html, body {
    font: 15px/1 'Lato', "Helvetica Neue", Helvetica, Arial, sans-serif;
    color: #555;
    background-color: #f4f4f3;
    font-weight: 400;
    text-rendering: optimizeLegibility;
    letter-spacing: 0.01em; /* Subtle increase in horizontal letter spacing */  
}

/* Ensure the bold tag uses a heavier weight */
b, strong {
    font-weight: 700; 
    -webkit-text-stroke: 0.3px;
    letter-spacing: 0.035em; /* Smooths out bold titles */
}

.clear {clear: both;}

p {
	font-size: 0.8em;
	line-height: 1.5em;
	margin-bottom: 10px;
	color: #444;
}

#cv {
	width: 100%;
	max-width: 750px;
	background: #f4f4f3;
	margin: 30px auto;
}

.mainDetails {
	padding: 25px 35px;
	border-bottom: 0px solid #cf8a05;
	background: #f4f4f3;
}

.align-top {
  vertical-align: top;
}

#name h1 {
	font-size: 2.2em;
	font-family: Arial, Helvetica, sans-serif;
	margin-bottom: -6px;
	margin-left: 2px;
}

#name h2 {
	margin-left: 1px;
	margin-top: 11px;
	font-family: 'Playfair Display', serif;
	font-size: 35px; 
	font-style: normal; 
	font-variant: normal; 
	font-weight: 700;
	letter-spacing: -0.5px;
	word-spacing: 0.05em;
}

#mainArea {
	padding: 0 40px;
}

#headshot {
	width: 14.5%;
	float: left;
	margin-right: 30px;
}

#headshot img {
	width: 100%;
	height: auto;
	-webkit-border-radius: 50px;
	border-radius: 70px;
}

#name {
	float: left;
}

#contactDetails {
	float: left;
	margin-left: 4px;
}

#contactDetails ul {
	list-style-type: none;
	font-size: 1em;
	margin-top: 5px;
}

#contactDetails ul li {
	margin-top: -2.0em;
	margin-bottom: 3px;
	color: #444;
}

#contactDetails ul li a, a[href^=tel] {
	color: #006699; 
	text-decoration: none;
}

#contactDetails ul li a:hover { 
	color: #E7717D;
}

section {
	border-top: 0px solid #dedede;
	padding: 10px 0 0;
}

section:first-child {
	border-top: 0;
}

section:last-child {
	padding: 20px 0 10px;
}

div img {
  vertical-align : middle;
  margin-right:5px; 
}

.sectionTitle {
	float: left;
	width: 50%;
}

.sectionContent {
	float: right;
	width: 100%;
	font-size: 0.95em;
	line-height: 1.45em;
	margin-bottom: 25px;
	color: #444;
}

.sectionContent a:link { 
	color: #006699;
	text-decoration: none;
}

.sectionContent a:visited {
	color:#006699;
}

.sectionContent a:hover { 
	color: #E7717D;
}

.sectionTitle h1 {
	font-size: 1.2em;
	color: #E7717D;
	margin-top: 10px;
	margin-bottom: 8px;
}

.sectionContent h2 {
	font-family: 'Rokkitt', Helvetica, Arial, sans-serif;
	font-size: 2em;
	margin-bottom: -2px;
}

.sectionContent h3 {
    font-weight: 700; 
    letter-spacing: 0.035em; /* Smooths out bold titles */
    -webkit-text-stroke: 0.3px;
}

.sectionContent h4 {
	margin-top: -0.8em;
	line-height: 1.45em;
}

.sectionContent h5 {
	margin-top: -0.5em;
	line-height: 1.45em;
}

.sectionContent h6 {
	display: inline-flex;
    align-items: center;
    font-weight: 600;
    font-size: 0.8em;           /* Slightly smaller font helps fit the line */
    color: #D97706;            /* */
    background-color: #FFFBEB; /* */
    border: 1px solid #FCD34D; /* */
    padding: 0px 8px;          /* Zero vertical padding to minimize height */
    border-radius: 10px;       /* Slightly tighter radius for smaller height */
    margin-left: 5px;
    vertical-align: baseline;  /* Changed to baseline to sit perfectly on the text line */
    line-height: 1.4;          /* Matches your standard paragraph line-height */
    height: 18px;              /* Explicit height to force it to stay within the text bounds */
    -webkit-text-stroke: 0.3px;
}

.subDetails {
	font-size: 0.8em;
	font-style: italic;
	margin-bottom: 3px;
}

.keySkills {
	list-style-type: none;
	-moz-column-count:3;
	-webkit-column-count:3;
	column-count:3;
	margin-bottom: 20px;
	font-size: 0.8em;
	color: #444;
}

.keySkills ul li {
	margin-bottom: 3px;
}


@media all and (min-width: 602px) and (max-width: 800px) {
	#headshot {
		display: none;
	}
	
	.keySkills {
	-moz-column-count:2;
	-webkit-column-count:2;
	column-count:2;
	}
}

@media all and (max-width: 601px) {
	#cv {
		width: 95%;
		margin: 10px auto;
		min-width: 280px;
	}
	
	#headshot {
		display: none;
	}
	
	#name, #contactDetails {
		float: none;
		width: 100%;
		text-align: center;
	}
	
	.sectionTitle, .sectionContent {
		float: none;
		width: 100%;
	}
	
	.sectionTitle {
		margin-left: -2px;
		font-size: 1.25em;
	}
	
	.keySkills {
		-moz-column-count:2;
		-webkit-column-count:2;
		column-count:2;
	}
}

@media all and (max-width: 480px) {
	.mainDetails {
		padding: 15px 15px;
	}
	
	section {
		padding: 15px 0 0;
	}
	
	#mainArea {
		padding: 0 25px;
	}

	
	.keySkills {
	-moz-column-count:1;
	-webkit-column-count:1;
	column-count:1;
	}
	
	#name h1 {
		line-height: .8em;
		margin-bottom: 4px;
	}
}

@media print {
    #cv {
        width: 100%;
    }
}

@-webkit-keyframes reset {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 0;
	}
}

@-webkit-keyframes fade-in {
	0% {
		opacity: 0;
	}
	40% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

@-moz-keyframes reset {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 0;
	}
}

@-moz-keyframes fade-in {
	0% {
		opacity: 0;
	}
	40% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

@keyframes reset {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 0;
	}
}

@keyframes fade-in {
	0% {
		opacity: 0;
	}
	40% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

.instaFade {
    -webkit-animation-name: reset, fade-in;
    -webkit-animation-duration: 1s;
    -webkit-animation-timing-function: ease-in;
	
	-moz-animation-name: reset, fade-in;
    -moz-animation-duration: 1s;
    -moz-animation-timing-function: ease-in;
	
	animation-name: reset, fade-in;
    animation-duration: 1s;
    animation-timing-function: ease-in;
}

/* Styling for Award/Oral Icons */
.icon-badge {
	color: #D97706; 
    margin-right: 3px;
    width: 12px;               /* Scaled down from 14px */
    height: 12px;              /* Scaled down from 14px */
    stroke-width: 2.5px;
}

/* Remove link underlining if the pill is inside an <a> tag */
.sectionContent a h6 {
    text-decoration: none;
}

.award-text {
    color: #ef923b;
    font-size: 0.85em;
    font-weight: 600;
    vertical-align: middle;
}

.icon-vb {
    color: #059669; /* Success Green */
    vertical-align: middle;
    margin-right: 4px;
    margin-bottom: 3px; /* Adjusts for baseline alignment */
    width: 16px;
    height: 16px;
    stroke-width: 2.5px;
    display: inline-block;
}

/* Optional: If you want the 'featured by' text to also be green */
.sectionContent b:has(.icon-vb) {
    color: #059669;
}

.sectionContent h6.badge-green {
    color: #059669;            
    background-color: #ECFDF5; 
    border: 1px solid #10B981; 
    font-size: 0.9em;          /* Increased from 0.8em */
    padding: 2px 10px;         /* Increased padding for better scaling */
    border-radius: 10px;
    margin-left: 5px;
    vertical-align: middle;    /* Changed to middle for better alignment with larger font */
    line-height: 1.2;
    height: auto;              /* Removed fixed height to allow font to breathe */
    display: inline-flex;
    align-items: center;
}

/* Specific icon color for the green badge */
.badge-green .icon-badge {
    color: #059669;
    width: 12px;
    height: 12px;
    margin-right: 3px;
}

/* New styles for the split badge look */
.vb-featured {
    color: #059669; /* Green text for 'featured by' */
    font-weight: 600;
    font-size: 0.85em;
    display: inline-flex;
    align-items: center;
    text-decoration: none;
}

.vb-featured .icon-vb {
    color: #059669; /* Green icon */
    width: 14px;
    height: 14px;
    margin-right: 4px;
    stroke-width: 2.5px;
}

/* Adjust the badge to have no left margin when following text */
.sectionContent .vb-featured h6.badge-green {
    margin-left: 4px; 
    text-decoration: none;
}


 