html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,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 {background: #181818; font-family: 'Lato', helvetica, arial, sans-serif; font-size: 12px; color: #222;}

.clear {clear: both;}

body {
    font-size: 80%;
}

article p, article ul, .keySkills li {
    font-size: 120%;
}

#contactDetails {
    font-size: 140%;

}

#contactDetails li {
    list-style-type: none;
}

div.pagebreak {
    page-break-after: always;
}

p {
	font-size: 1em;
	line-height: 1.4em;
	margin-bottom: 15px;
	color: #444;
}

#cv {
	width: 90%;
	max-width: 800px;
	background: #f3f3f3;
	margin: 30px auto;
}

.mainDetails {
	padding: 25px 35px;
	border-bottom: 2px solid /*#cf8a05*/ #3165c2;
	background: #ededed;
}

#name h1 {
	font-size: 2.5em;
	font-weight: 700;
	font-family: 'Rokkitt', Helvetica, Arial, sans-serif;
	margin-bottom: -6px;
}

#name h2 {
	font-size: 2em;
	margin-left: 2px;
	font-family: 'Rokkitt', Helvetica, Arial, sans-serif;
}

#mainArea {
	padding: 0 40px;
}

#headshot {
	width: 12.5%;
	float: left;
	margin-right: 30px;
}

#headshot img {
	width: 100%;
	height: auto;
	-webkit-border-radius: 50px;
	border-radius: 50px;
}

#name {
	float: left;
}

#contactDetails {
	float: right;
}

#contactDetails ul {
	yellowlist-style-type: none;
	font-size: 0.9em;
	margin-top: 2px;
}

#contactDetails ul li {
	margin-bottom: 3px;
	color: #444;
}

#contactDetails ul li a, a[href^=tel] {
	color: #444; 
	text-decoration: none;
	-webkit-transition: all .3s ease-in;
	-moz-transition: all .3s ease-in;
	-o-transition: all .3s ease-in;
	-ms-transition: all .3s ease-in;
	transition: all .3s ease-in;
}

#contactDetails ul li a:hover { 
	color: #cf8a05;
}


section {
	border-top: 1px solid #dedede;
	padding: 20px 0 0;
}

section:first-child {
	border-top: 0;
}

section:last-child {
	padding: 20px 0 10px;
}

.sectionTitle {
	float: left;
	width: 15%;
}

.sectionContent {
	float: right;
	width: 85%;
}

.sectionTitle h1 {
	font-family: 'Rokkitt', Helvetica, Arial, sans-serif;
	/*font-style: italic;*/
	font-size: 1.5em;
	/*color: #cf8a05;*/
    color: #3165c2;
}

.sectionContent h2 {
	font-family: 'Rokkitt', Helvetica, Arial, sans-serif;
	font-size: 1.5em;
	margin-bottom: -2px;
}

.subDetails {
/*	font-size: 0.8em;*/
	font-size: 1em;
	margin-bottom: 3px;
    color: #545454;
}

:root{
    --box-bg: #8aa9e1;
    --box-radius: 16px;      /* change for rounder/squarer corners */
    --box-padding: 10px;
    --box-width: 320px;
    --box-max-width: 90vw;
    /*--box-shadow: 0 6px 18px rgba(0,0,0,0.12);*/
    --text-color: white;   

}


.skill
{
   /*background: linear-gradient(180deg, var(--box-bg), color-mix(in srgb, var(--box-bg) 85%, white 15%));*/
    background-color: var(--box-bg);
    border-radius: var(--box-radius);
    padding: var(--box-padding);
    width: var(--box-width);
    max-width: var(--box-max-width);
    box-shadow: var(--box-shadow);
    color: var(--text-color);
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
    line-height: 1.4;
    box-sizing: border-box;
    /*margin: 24px auto;*/      /* centers when used as block */
}

.keySkills {
	list-style-type: none;
	-moz-column-count:2;
	-webkit-column-count:2;
	column-count:2;
	margin-bottom: 20px;
	font-size: 1em;
	color: #444;
}

.keySkills ul li {
	margin-bottom: 3px;
}

li {
    margin-left: 10px;
    color: #111111;
}
.bulletDetails {
    list-style: none;
    padding-left: 1em;
}
.bulletDetails li::before {
    content: "•"; 
    color: #999999;
    display: inline-block; width: 1em;
    margin-left: -1em
}
.bulletDetails li li { /* fix */
    font-size: 80%;
}

.keySkills.bullets {
	list-style-type: disc;
}


@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 10px;
	}

	
	.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%;
    }
    .skill { 

        print-color-adjust: exact;
        -webkit-print-color-adjust: exact; 
    }

}

@-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: 1.5s;
    -webkit-animation-timing-function: ease-in;
	
	-moz-animation-name: reset, fade-in;
    -moz-animation-duration: 1.5s;
    -moz-animation-timing-function: ease-in;
	
	animation-name: reset, fade-in;
    animation-duration: 1.5s;
    animation-timing-function: ease-in;
}

.quickFade {
    -webkit-animation-name: reset, fade-in;
    -webkit-animation-duration: 2.5s;
    -webkit-animation-timing-function: ease-in;
	
	-moz-animation-name: reset, fade-in;
    -moz-animation-duration: 2.5s;
    -moz-animation-timing-function: ease-in;
	
	animation-name: reset, fade-in;
    animation-duration: 2.5s;
    animation-timing-function: ease-in;
}
 
.delayOne {
	-webkit-animation-delay: 0, .5s;
	-moz-animation-delay: 0, .5s;
	animation-delay: 0, .5s;
}

.delayTwo {
	-webkit-animation-delay: 0, 1s;
	-moz-animation-delay: 0, 1s;
	animation-delay: 0, 1s;
}

.delayThree {
	-webkit-animation-delay: 0, 1.5s;
	-moz-animation-delay: 0, 1.5s;
	animation-delay: 0, 1.5s;
}

.delayFour {
	-webkit-animation-delay: 0, 2s;
	-moz-animation-delay: 0, 2s;
	animation-delay: 0, 2s;
}

.delayFive {
	-webkit-animation-delay: 0, 2.5s;
	-moz-animation-delay: 0, 2.5s;
	animation-delay: 0, 2.5s;
}

p.detail {
    margin-bottom: 0px;
}

/* Updated Tags/Skills Styling */
/* Subtle/Neutral Tags */
.tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 8px 0 12px 0;
}

.tag {
    /* Muted Slate Palette */
    background: #e2e8f0;      /* Soft light grey-blue */
    color: #475569;           /* Darker slate text for readability */
    border: 1px solid #cbd5e1; /* Subtle border to define the shape */

    padding: 2px 10px;
    border-radius: 4px;       /* Slightly squarer for a modern look */
    font-size: 0.8rem;
    font-weight: 500;
    display: inline-block;
    line-height: 1.4;
    transition: all 0.2s ease;

    /* remove the below for normal font */
    font-family: ui-monospace, 'Cascadia Code', 'Source Code Pro', Menlo, Monaco, 'Courier New', monospace;
    font-size: 0.75rem;       /* Slightly smaller for monospace */
    font-weight: 500;
}

.tag:hover {
    background: #cbd5e1;
    color: #1e293b;
    border-color: #94a3b8;
}

.highlight {
    background-color: #FFFF00;
}
