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 {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
    display:block;
}

b
{
    font-weight: bold;
}

ul {
    color:white;
    display:inline-block;
    text-align:left;
    list-style:none;
    user-select:none;
}

li {
    padding: 5px 20px;
    color: white;
    background-color: #1c445c;
    border-radius: 50px;
    margin: 5px;
    box-shadow: 5px 5px 5px #78accb;
}

blockquote, q {
    quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}

img {
    vertical-align:middle;
}

a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    cursor:pointer;
    font-weight:400;
    color:inherit;
    text-decoration:none;
    user-select:none;
}
a {text-decoration: none;}
a:hover{}

ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}

mark {
    background-color:#ff9;
    color:#000;
    font-style:italic;
    font-weight:bold;
}
del {
    text-decoration: line-through;
}
abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}
table {
    border-collapse:collapse;
    border-spacing:0;
}

hr {
    display:block;
    height:1px;
    border:0;
    border-top:1px solid white;
    margin:2.5% 5%;
    padding:0px;
    width:90%;
}

label {
    color:#4f4f4f;
    font-size:1.0em;
    padding-right:20px;
    user-select:none;
}

input[type=text], input[type=password], select, textarea {
    width: 100%;
    padding: 12px;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-sizing: border-box;
    margin-bottom: 6px;
    resize: vertical;
    font-size:1.0em;
    -webkit-appearance: none;
    -moz-appearance: none;
}

input[type=checkbox]
{
  -ms-transform: scale(2);
  -moz-transform: scale(2);
  -webkit-transform: scale(2);
  -o-transform: scale(2);
  padding:10px;
}

button {
    background-color:white;
    padding:15px;
    color:black;
    border:solid 1px gray;
    border-radius: 5px;
    cursor: pointer;
    font-size:1.0em;
    -webkit-appearance: none;
    -moz-appearance: none;
    font-variant:small-caps;
}

button:hover {
    background-color:black;
    color:white;
    text-decoration:underline;
}

button:active {
    background-color: #4475cc;
    text-decoration:underline;
}

button:disabled {
    color:gray;
}


/********************************* END OF RESET ****************************/


@font-face {
    font-family: 'Open_Sans_Font';
    src: local('Open Sans'), url('fonts/OpenSans-Light.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
    font-display:block;
}

:root {
    --primary-color:#ba9d9d;
    --secondary-color:  #688e9e;
}


.none
{
    display: none;
}


html {
    position: relative;
    width: 100%;
    min-width:750px;
    min-height: 100%;
    overflow-y:scroll;
}

body {
    color: var(--primary-color);
    color: white;
    font-family: sans-serif;
    font-size: 18px;
    width: 100%;
    margin: 0 auto;
}

.page_body {
    width: 75%;
    min-height:100%;
    left:12.5%;
    margin: 0 auto;
    padding:0;    
    overflow: hidden;
    position:absolute;
    display:block;
    text-align:center;
}


.border_span_horizontal {
    width: 100%;
    height: auto;
    white-space: pre;
    overflow: hidden;
    margin: 25px 5px;
    text-transform: uppercase;
    font-weight: 400;
    letter-spacing: 0.5em;
    font-size: 2.5em;
    pointer-events: none;
    user-select: none;
    color: var(--secondary-color);
    background-color: white;
    font-family: Open_Sans_Font;
}

#main_menu_listing {
    display:inline-block;
    margin-top:2.5vh;
}


#intro_whale{
display: block;
margin:50px auto 0 auto;
}

#intro_whale img{
    max-width: 200px;    
}

.glowable {
    padding: 20px 5px 5px 5px;
    margin: 25px;
    display: block;
    border-bottom: solid 1px transparent;
    color:var(--primary-color);
}

.glowable h1 {
    font-weight: normal;
    font-family: Open_Sans_Font;
    letter-spacing: -0.5em;
    animation: letter_space_out 2.0s ease-in-out forwards;
    animation-delay: 0.5s;
    border-bottom: solid 1px transparent;
    display: inline-block;
}

@keyframes letter_space_out {
    0% {
        letter-spacing: -0.5em;
    }

    100% {
        letter-spacing: 0.4em;
    }
}


.glowable:hover {
    border-bottom: solid 1px var(--primary-color);
}

.glowable:hover:before {
    content: '\2192';
    position: relative;
    left: -12px;
    vertical-align: top;
}
.glowable:hover:after {
    content: '\2190';
    position: relative;
    left: 12px;
    vertical-align: top;
}
    
.glowable:active h1 {
    letter-spacing: 0.25em !important;
}

.back_to_home {
    color: white;
    background-color: var(--secondary-color);
    display: inline-block;
    margin: 50px auto;
    padding: 20px 15px;
    border-radius: 3px;
    font-variant: small-caps;
    box-shadow:5px 5px 5px lightgray;
    vertical-align:middle;
}

.back_to_home:hover
{
    transform: scale(103%);
}

.back_to_home:active
{
    transform: scale(103%) translate(2px, 2px);
}

.back_to_home span {
    vertical-align:middle;
}
.back_to_home span:before {
    content: '\2190';
}

#work_header {
    margin: 50px auto 25px auto;
    font-family: Open_Sans_Font;
    color: var(--primary-color);
}

#work_header h2:before {
    content: '\2756';
    font-size: 1.5em;
}

.work_block {
    color: var(--secondary-color);
    display: block;
    margin: 25px auto;
    position: relative;
    user-select: none;
}

.work_block h1 {
    font-weight: bold;
    letter-spacing: 0.35em;
    font-size: 3.0em;
    pointer-events: none;
    display: inline-block;
    padding:10px 10px;
    border-top:solid 13px;
    border-bottom:solid 13px;


    border-radius:3px;
}

.work_block h2 {
    font-weight: bold;
    letter-spacing: 0.35em;
    font-size: 2.0em;
    margin:25px;
    pointer-events: none;
    display: inline-block;
}


.title_block {
    margin-right: 35px;
    margin-top:0px;
    vertical-align:top;
    width:250px;
    font-size:0.75em;
    letter-spacing:0.1em;
    white-space:normal;
}

.title_block a {
}
.title_block a:hover {
    text-decoration: underline;
}


.picture_block {
    position: relative;
    margin: 100px auto 200px auto;
    white-space: nowrap;
}
.picture_block img {
    border-radius: 7px;
    width: 50%;
    display: inline-block;
    box-shadow: 8px 8px 15px #aeaeae;
}
.picture_block div{
    display:inline-block;
    text-align:left;
}
.picture_block span {    
    float:right;
}

.picture_block p1 {
    margin: 10px auto;
    display: block;
    color: white;
    background-color: var(--primary-color);
    border-radius: 3px;
    border-bottom-right-radius: 25px;
    padding: 10px;
}

.picture_block p2 {
    margin: 10px auto;
    display: block;
    padding: 0px 5px;
    color: #3c3c3c;
}

.picture_block p3 {
    margin: 10px auto;
    display: block;
    font-style: italic;
    font-variant: small-caps;
    padding: 0px 5px;
    color:var(--primary-color);

}

.picture_block p4 {
    margin: 10px auto 50px auto;
    display: block;
    padding: 0px 5px;
    color: #3c3c3c;
}

.gallery_thumbs {
    vertical-align: top;
    margin-left: 35px;
}

.gallery_thumbs a {
    margin:0;
}

.gallery_thumbs img {
    width: 100px !important;
    height: auto !important;
    display: block !important;
    margin:0px auto 25px auto;
}

.gallery_thumbs img:hover {
    transform: scale(105%);
}

.gallery_thumbs img:active {
    transform: scale(105%) translate(2px, 2px);
}

.top_links {
    font-weight:100;
    display:block;
}

.page_links {
    color: var(--primary-color);
    font-family: Open_Sans_Font;
}

.page_links a {
    margin:0 15px;
    letter-spacing:0.1em;
}

.page_links a:hover {
    text-decoration: underline;
}

.about_block {
    vertical-align: middle;
    font-size: 0.75em;
    letter-spacing: 0.1em;
    margin: 0px auto 150px auto;
    width: 60%;
    line-height: 1.25em;
    color:black;
}

.about_block p {
    margin: 0px auto 25px auto;
}

.about_block span {
    user-select: all;
    cursor:default;
}
.about_block span:hover {
    text-decoration: underline;
}

.about_block img {
    max-width: 500px;
    margin: 50px auto 25px auto;
    border-radius: 10px;
    box-shadow: 8px 8px 15px #aeaeae;
}
.about_block a:hover {
    text-decoration:underline;
}
.about_block a img {
    margin: 0;
    box-shadow: none;
}
.about_block p2 {
    margin-left:10px;
    font-variant:small-caps;
    color:black;
}


@media screen and (max-width: 1200px) {
html {
min-height: 100%;
}

.page_body {
width: 100%;
left: 0;
font-size: 1.85em;
}

#main_menu_listing {
    margin-top: 1.0vh;
}

.glowable {
    padding-top:50px;
    margin:50px;
       
}

#intro_whale img {
    max-width:100%;
    margin-bottom:200px;
}

.title_block {
width: 60%;
}

.picture_block {
text-align: center;
}

.picture_block img {
width: 75%;
}

.picture_block div {
display: block;
margin: 50px auto;
text-align: center;
}

.border_span_horizontal {
    
font-size: 1.0em;
}

.gallery_thumbs {
text-align: center !important;
margin-top: 0px !important;
white-space:normal;
}

.gallery_thumbs a {
width: auto;
display: inline-block;
}

.gallery_thumbs img {
    width: 150px !important;
    height: auto !important;
    margin: 50px 20px 25px 20px;
}

.picture_block p1 {
padding: 10px 50px;
}

#work_header h2:before {
}

.work_block {
    margin-top:150px;
}

.work_block h1 {
    border: none;
    font-size: 2.5em;
    padding:0 75px;
}

.work_block h2 {
    display:block;
}

.about_block {       
    width:80%;
    margin-top:100px;
}
.about_block p {
    margin-top:25px;
}
}

@media screen and (orientation: landscape) and (max-width: 1200px) {
    .page_body {
        min-height: 250%;
    }
}
    