#main{clear:both;width:100%;background:#FFF;display:table;table-layout:fixed;margin-top:20px}@media screen and (max-width:480px){#main{width:100%;padding:0;margin:0;background:none}}#threescreens{position:relative;width:320px;height:127px;overflow:hidden}#threescreens img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .2s linear;will-change:opacity}#threescreens img.active{opacity:1}@media only screen and (max-width:800px){p{line-height:130%;margin:0;padding:0 22px}}.contentblock{padding-bottom:125px;clear:left;border-top:12px solid #222;border-left:5px solid #FFF;margin-top:29px}@media only screen and (max-width:768px){.contentblock{float:left;width:auto;padding:0 22px}}.contentblock h1{letter-spacing:0}.contentblock .toplegend{float:left;color:#222;font-size:0.7em;letter-spacing:1px;padding-left:12px;padding-bottom:12px;margin-top:-13px}.contentblock .toplegend span{padding:5px;background-color:#FFF}.contentblock .references-picture-rwdbefore{clear:left;display:block;float:left;width:193px;height:138px;background:transparent url(bg_portfolio_screenshot.gif) no-repeat;padding:11px 0 0 5px;margin-top:1px;margin-right:12px}@media only screen and (max-width:768px){.contentblock .references-picture-rwdbefore{display:none}}.contentblock .references-picture-rwdafter{display:none}@media only screen and (max-width:768px){.contentblock .references-picture-rwdafter{display:block;clear:left;width:193px;height:138px;background:transparent url(bg_portfolio_screenshot.png) no-repeat;padding:11px 0 0 5px;margin-bottom:-5px}}.skills{width:205px;margin-top:-6px}@media only screen and (max-width:768px){.skills{margin-top:10px}}.contentblock .skills-picture-rwdbefore{display:block;float:left;width:193px;height:148px;margin-right:23px}@media only screen and (max-width:768px){.contentblock .skills-picture-rwdbefore{display:none}}.contentblock .skills-picture-rwdafter{display:none}@media only screen and (max-width:768px){.contentblock .skills-picture-rwdafter{display:block;clear:left;width:193px;height:148px;margin-bottom:8px}}.contentblock .infosector{display:block;float:left;width:32%;background:#E5E5E5;font-size:14px;padding:2px;border:1px solid #DDD;border-bottom:0;border-radius:7px;box-shadow:2px 3px 3px #DDD}@media only screen and (max-width:1200px){.contentblock .infosector{width:99%}}@media only screen and (max-width:1024px){.contentblock .infosector{font-size:14px}}@media only screen and (max-width:768px){.contentblock .infosector{width:98%;margin-bottom:14px}}@media only screen and (max-width:768px){.contentblock .infosector h1{font-size:23px}}.contentblock .l1{color:#FFF;background:#FF5A00;padding:0 5px;margin-right:2px}.contentblock .l2{color:#FFF;background:#222}.contentblock .description{display:block;float:left;width:38%;font-size:13px;color:#222;line-height:150%;text-align:justify;hyphens:auto;padding-left:20px;margin-top:-3px;margin-bottom:0px}.contentblock .description:hover{background:linear-gradient(to right,#FFFFFF,#FFFDDD)}@media only screen and (max-width:1024px){.contentblock .description{width:auto;font-size:15px;padding-left:0;margin-top:10px}}@media only screen and (max-width:1200px){.contentblock .description{width:auto;padding-left:0;margin-top:10px}}@media only screen and (max-width:768px){.contentblock .description{width:auto;font-size:15px;text-align:left;margin:8px}}.contentblock:hover{color:#222;height:auto;border-top:12px solid #F40}.description a:link,.description a:visited{color:#F40;font-weight:bold}h1,h5{font:23px Gregfont5,Arial,sans-serif;font-weight:bold;color:#000;background:#FFF;margin-top:2px;padding:11px 0 5px 0px;border-bottom:2px solid #000}@keyframes pulse1{0%{color:#FFA}100%{color:#71B4E6}}@media only screen and (max-width:768px){h1,h5{background:#FFF;font-size:20px;color:#222;font-weight:bold;letter-spacing:-1px;padding-bottom:6px;border:none;animation:none}}h2{white-space:nowrap;font-family:Gregfont6,sans-serif;font-size:15px;font-weight:bold;line-height:37px}h2 span{white-space:normal}@media only screen and (max-width:1024px){h2{font-size:13px}}.reactions_title{font-size:11px;font-weight:700;line-height:20px;margin-top:5px;margin-bottom:8px;border-radius:10px}h3{font:26px/1 Gregfont5,'Arial narrow',sans-serif;color:#FFF;letter-spacing:2px;margin-bottom:.8em}@media screen and (max-width:497px){h3{margin-top:20px}}p,ul{margin-bottom:.8em}hr{width:96%;margin-bottom:.8em;border:none;border-top:1px solid #222}.italic{font-family:Arial;font-size:12px;font-style:italic;color:#777}.clear{clear:both;width:0;height:0;display:block;overflow:hidden;visibility:hidden}.primarycolor{color:#FE5A01}.secondarycolor{color:#222}#ticker{width:276px;height:214px;background:#FFF;font-family:Gregfont5;font-size:15px;font-style:italic;line-height:135%;color:#F40;box-shadow:2px 2px 10px #72B5E5;border-left:1px solid #72B5E5;hyphens:auto;padding:12px 22px 23px 20px;cursor:pointer}#ticker:hover{background:#FFFFAA;color:#222;text-shadow:none}.feedbackby{float:right;margin-top:8px;font-family:Gregfont4;font-size:11px;color:#222222;font-style:normal;font-weight:normal;box-shadow:0 2px 5px #ccc;border-radius:5px}.feedbackby-dark{float:right;margin-top:5px;font-family:Gregfont4;font-size:11px;font-style:normal}@media screen and (max-width:768px){.feedbackby-dark{font-size:15px}}@media only screen and (max-width:900px){.navseparator{display:none}}.greg{display:block;width:95%;text-align:center;border:1px solid #F40;border-top:none;border-radius:20px;padding:10px;margin-bottom:15px}.gregpics{width:500px;max-width:90%;border-radius:40px}.gregpics:hover{box-shadow:none;filter:grayscale(100%);transition:all 2s ease-in-out}@media screen{.onlywhenprinting{display:none}}.decolink-eye a{background-image:url(icon_eye.gif);background-position:0 1px;background-repeat:no-repeat;padding-left:16px}.decolink-eye a:hover{background-image:url(icon_eye.gif);background-position:0 -16px;background-repeat:no-repeat;padding-left:16px;transition-property:none !important}label{color:#FFFFAA}.label1{background:#888;font-size:13px;color:#FFF;padding:5px}.label2{background:#222;font-size:13px;color:#FFF;padding:5px}.justify{text-align:justify}.fontsize17{font-size:15px}.u{text-decoration:underline}.nobreak{white-space:pre}a.tooltip{text-decoration:none}a.tooltip span{display:none;text-decoration:none}a.tooltip:hover span{display:block;position:absolute;bottom:28px;left:0;width:260px;z-index:20;font-family:Gregfont4;font-size:13px;font-weight:normal;color:#222;text-decoration:none;text-align:justify;line-height:120%;background:#FFF;padding:4px;border:3px double #F40;border-radius:5px;box-shadow:0 0 10px #222}a.tooltip-left{text-decoration:none}a.tooltip-left span{display:none;text-decoration:none}a.tooltip-left:hover span{display:block;position:absolute;bottom:28px;right:0;width:270px;z-index:20;font-family:Gregfont4;font-size:13px;font-weight:normal;color:#222;text-decoration:none;text-align:justify;line-height:120%;background:#FFF;padding:4px;border:3px double #F40;border-radius:5px;box-shadow:0 0 10px #222}#toolbar{z-index:2;position:absolute;top:-2px;left:0;right:0;height:70px;background:#FFF;font:15px/1.5 Gregfont4,Arial,sans-serif;font-size:0.8em;color:#222;padding:6px 2% 100px 3%;text-align:right;letter-spacing:1px}@media only screen and (max-width:600px){#toolbar{background:#F40;padding:10px 0 0}}@media only screen and (max-width:768px){#toolbar{height:94px}}#toolbar a{display:inline-block;color:#FFF;text-decoration:none;padding-top:3px;padding-bottom:1px}#toolbar .raised{padding-top:3px;display:inline-block;color:#222;text-decoration:none}@media only screen and (min-width:600px){#toolbar-contentwide{display:block;font-size:14px;letter-spacing:0px;margin-top:6px}#toolbar-contentnarrow{display:none}}@media only screen and (max-width:600px){#toolbar-contentwide{display:none}.colorselector{visibility:hidden}}#header{position:relative;padding-top:13px;margin-bottom:21px}#greglogo{z-index:1222;width:230px;height:80px}@media screen and (max-width:1060px){#greglogo{width:190px;height:70px;margin-top:17px;margin-left:21px}}@media screen and (max-width:800px){#greglogo{margin:-22px 0 0px 28px;padding-bottom:30px}}@media screen and (max-width:600px){#greglogo{margin:0 0 8px 22px}}#topnavigation{position:absolute;z-index:1222;right:0;bottom:-10px;font:1.9em Gregfont5,'Arial narrow',sans-serif;font-weight:bold}@media screen and (max-width:768px){#topnavigation{bottom:-10px;width:100%;padding:0}}#topnavigation ul{float:right}@media screen and (max-width:1010px){#topnavigation ul{font-size:22px;padding-bottom:10px}}@media screen and (max-width:768px){#topnavigation ul{float:none;width:100%;display:table;table-layout:fixed;font-size:14px;font-weight:bold;padding-bottom:0;margin-bottom:0}#topnavigation ul li.current{border:1px solid #222}}@media screen and (max-width:480px){#topnavigation ul{float:none;display:table;table-layout:initial;font-size:12px;text-shadow:1px 1px 1px #CCC}}#topnavigation ul li{float:left;display:inline-block}@media screen and (max-width:768px){#topnavigation ul li{float:none;width:100%;overflow:hidden;display:table-cell;width:auto;text-align:center;background:#FFF;font-size:1.5em;letter-spacing:1px;border:1px solid #BBB;border-left:none}}#topnavigation ul li a{display:block;padding:0.4em .8em;text-decoration:none;color:#F40}@media screen and (max-width:768px){#topnavigation ul li a{font-size:.9em;color:#FE5A01;text-transform:uppercase;padding:10px 0}}#topnavigation ul li a .sub{display:block;font-family:Gregfont4;font-size:14.5px;color:#AAA;padding-left:2px;margin-top:-5px}@media screen and (max-width:1010px){#topnavigation ul li a .sub{display:none}}#topnavigation ul li a:hover,#topnavigation ul li.current a{color:#fff;background-color:#222}@media screen and (max-width:768px){#topnavigation ul li.current a{border:1px solid #222}}#topnavigation ul li a:hover .sub,#topnavigation ul li.current .sub{color:#CCC}#main.ifsubnavigation .subnav,#main.ifsubnavigation .content{display:table-cell;vertical-align:top}#main.ifsubnavigation .subnav{width:160px;font-family:Gregfont5;font-size:14px;padding-right:22px}#main.ifsubnavigation .content{padding-top:6px;padding-left:20px}#main.ifsubnavigation .subnav select.menu{display:none}#main.ifsubnavigation .subnav ul.menu li{border-bottom:1px solid #F40;font-family:Gregfont4;font-weight:bold;white-space:pre;padding-bottom:6px}#main.ifsubnavigation .subnav ul.menu li a,.subnav .back{text-decoration:none;display:block;padding:8px 0 6px 2px;margin-top:6px}#main.ifsubnavigation .subnav ul.menu li.current a,#main.ifsubnavigation .subnav ul.menu li a:hover,.subnav .back{color:#FFF;background-color:#222}@media screen and (max-width:768px){#main.ifsubnavigation .subnav,#main.ifsubnavigation .content{display:block}#main.ifsubnavigation .subnav{width:auto;background-color:#222;padding:10px;margin-top:-24px}#main.ifsubnavigation .subnav ul.menu{display:none}#main.ifsubnavigation .subnav select.menu{width:95%;display:block;padding:7px;color:#222;font-size:1.1em;background:#EFEFEF;border-color:#FE5A01;margin-top:18px}}a:hover{border-color:#F40;transition:color .2s linear,background-color .2s linear,border-color .2s linear}a:active{bottom:0;position:relative;outline:none}a img{border:none}@media screen and (max-width:800px){a:active{color:#222;background:#FF0}}.linknewtab{background-image:url(icon_newtab.png);padding:0 0 0 26px;margin-left:5px;background-position:0 0;background-repeat:no-repeat}input,textarea,select{font:100% Gregfont4,Arial,sans-serif;color:#FFF}input[type=text],input[type=search],input[type=email],input[type=url],textarea{background:transparent;transition:all .3s ease-in-out;padding:6px;border:1px solid #FFF;border-radius:2px;margin:auto;margin-bottom:8px}textarea{border:1px solid #FFF}input:focus,textarea:focus{box-shadow:0 0 12px #FFF;letter-spacing:.5px;text-shadow:0 1px 1px #CCDDDD}input[type=submit]{font-family:Verdana,Arial;width:135px;height:32px;background:#FFFFAA;color:#222;border:4px outset #FE5A01;border-radius:4px;padding-top:0;margin:0 6px 2px;cursor:pointer}input[disabled]{color:#222}#homeblocks{width:100%;margin:auto}@media only screen and (max-width:800px){#homeblocks{width:320px}}@media only screen and (min-width:768px){#homeblocks{width:730px}}@media only screen and (min-width:1280px){#homeblocks{width:1040px}}@media only screen and (max-width:1279px){#homeblocks{transform:scale(1.07);padding:30px 0 30px 0}}@media only screen and (max-width:800px){#homeblocks{transform:scale(1.17)}}#home-block-1{float:left;width:320px;height:352px}@media only screen and (max-width:768px){#home-block-1{height:320px;margin-top:140px}#home-block-1-spacer{display:block;height:20px;margin-top:140px}}@media only screen and (min-width:768px){#home-block-1{padding:0 20px}}@media only screen and (min-width:1280px){#home-block-1{padding:0 15px 0 0}}#home-block-2{float:left;width:320px;height:352px}@media only screen and (max-width:768px){#home-block-2{height:320px;margin-bottom:12px}}@media only screen and (min-width:768px){#home-block-2{padding:0 20px}}@media only screen and (min-width:1280px){#home-block-2{padding:0 15px 0 8px}}#home-block-3{float:left;width:320px;height:352px}@media only screen and (max-width:768px){#home-block-3{height:320px;margin-bottom:12px}}@media only screen and (min-width:768px){#home-block-3{padding:0 20px}}@media only screen and (min-width:1280px){#home-block-3{padding:0 15px}}#home-block-4{float:left;width:320px;height:352px}@media only screen and (max-width:768px){#home-block-4{height:320px;margin-bottom:12px}}@media only screen and (min-width:768px){#home-block-4{padding:0 20px}}@media only screen and (max-width:768px){#home-block-5{height:auto}}@media only screen and (min-width:1280px){#home-block-4{padding:0 15px 0 0}}#home-block-5{float:left;width:330px;height:342px}@media only screen and (min-width:768px){#home-block-5{padding:0 20px}}@media only screen and (min-width:1280px){#home-block-5{padding:0 10px 0 8px}}#home-block-6{float:left;width:320px;height:352px}@media only screen and (max-width:768px){#home-block-6{height:320px;margin-bottom:150px}}@media only screen and (min-width:768px){#home-block-6{padding:0 20px}}@media only screen and (min-width:1280px){#home-block-6{padding:0 10px}}#timeline{width:861px;height:158px;margin:auto;margin-top:14px;margin-left:-13px}@media only screen and (max-width:1209px){#timeline{display:none}}#timeline-vertical{width:320px;height:861px;margin:20px 0 40px}@media only screen and (min-width:1210px){#timeline-vertical{display:none}}#tiles{list-style-type:none;position:relative}#tiles li{display:none}@media only screen and (max-width:768px){#tiles li{margin-top:0;margin-bottom:0}}.reactions-gridbox{float:left;width:230px;background:#FFF;font-size:13px;hyphens:auto;padding:4px;padding-bottom:14px;border:1px dotted #222;border-bottom:4px double #F40;margin:4px;margin-bottom:53px;box-shadow:0 0 8px #AAA}.reactions-gridbox-text{font-family:Gregfont4;font-style:italic}@media only screen and (max-width:768px){.reactions-gridbox{width:320px;font-size:16px;text-align:left}}@media only screen and (max-width:500px){.reactions-gridbox{width:320px;font-size:16px;text-align:left;margin:0 0 18px -2px}}.reactions-gridbox h2{padding:3px 0 5px 0;font-family:Arial,sans-serif;color:#FFF!important;background:#222;text-transform:uppercase;border-bottom:3px solid #FFF}.reactions-gridbox:hover{color:#222;background:#FFFFAA;border:1px solid #CCDDDD;border-bottom:5px solid #FF5A00;border-radius:10px}.img-weblog-thumbnail{float:right;width:103px;margin-left:15px;margin-top:7px;border:1px solid #AAA;border-left:0;border-radius:10px}@media only screen and (max-width:768px){.img-weblog-thumbnail{margin-right:5px;margin-left:5px}}.img-weblog-thumbnail:hover{border:1px dotted #F40}.img-weblog{float:right;max-width:100%;background:url(bg_img_weblog.png) bottom;padding-bottom:18px;margin-top:5px;margin-left:22px;border-top:1px solid #DDD}@media only screen and (max-width:768px){.img-weblog{display:block;float:none;margin:auto}}.at{max-width:100%;margin-bottom:45px;border:1px dashed #246;border-radius:3px;box-shadow:3px 3px 5px 5px #89A}.blogpost-date{background:url(weblog_datecircle.gif) repeat scroll 0 0 transparent;float:left;font-size:16px;height:65px;text-transform:uppercase;width:65px;margin-right:15px}.blogpost-date>div{float:left;font-family:'Arial',sans-serif;position:relative}.blogpost-month{color:#222;left:0;text-align:right;top:12px;width:30px}.blogpost-day{color:#FFF;left:8px;top:26px}.weblog-text{font-family:Gregfont6,Arial;font-size:20px;color:#222;font-weight:300;line-height:26px}@media only screen and (max-width:768px){.weblog-text{font-size:20px;color:#222;font-weight:300}}.video-container{position:relative;padding-bottom:56.25%;height:0;overflow:hidden}.video-container iframe,.video-container object,.video-container embed{position:absolute;top:0;left:0;width:100%;height:100%}#footer{background:#1C2C49;font-size:13px;color:#FFF;padding:20px 20px 20px 20px;border-top:10px solid #72B5E5}@media screen and (max-width:600px){#footer{padding:15px;margin:0}}#footer a{color:#FFF;z-index:100}@media screen and (max-width:600px){#footer a{font-size:15px;line-height:300%;border-bottom:1px solid #FFF}}#footerblocks{width:100%;margin:auto}@media only screen and (max-width:800px){#footerblocks{width:320px}}@media only screen and (min-width:768px){#footerblocks{width:730px}}@media only screen and (min-width:1280px){#footerblocks{width:965px}}#footer-block-1{float:left;width:309px}@media only screen and (min-width:768px){#footer-block-1{padding:0 20px}}@media only screen and (min-width:1280px){#footer-block-1{padding:0 10px 0 0}}#footer-block-2{float:left;width:305px;font-size:13px;color:#BBB;text-align:justify;line-height:170%}@media only screen and (min-width:768px){#footer-block-2{padding:0 20px;font-style:italic}}@media only screen and (min-width:1280px){#footer-block-2{padding:0 10px 0 0}}@media screen and (min-width:768px) and (max-width:1279px){#footer-block-2{display:none}}#footer-block-3{float:left;width:280px}@media only screen and (min-width:768px){#footer-block-3{padding:0;margin-left:24px}}@media only screen and (min-width:1024px){#footer-block-3{padding:0;margin-left:32px}}@media only screen and (min-width:1280px){#footer-block-3{padding:0 10px 0 0;margin-left:24px}}#sitemap{font-weight:bold;letter-spacing:2px;line-height:160%}@media screen and (max-width:497px){#sitemap{margin-left:15px;margin-bottom:15px}#sitemap a{margin-left:15px;line-height:220%;margin-bottom:15px}}#sitemap a:hover{letter-spacing:2px}.sitemaplink-active{padding:3px 4px 1px 5px;background:#F40;margin-left:-4px}.sitemapdividermain{display:block;float:left;color:#F40;font-size:28px;margin-left:-2px}.casestudy{color:#DDD}@media screen and (max-width:497px){.casestudy{font-size:15px;padding-left:15px}}#bottom{background:#222;color:#FFF;font-size:13.5px;text-align:center;padding-top:5px;border-bottom:13px solid #72B5E5}@media screen and (max-width:768px){#bottom{display:none}}#bottom a,#bottom a:visited,#bottom a:hover{color:#FE5A01;font-weight:700;text-decoration:underline;z-index:50}#backtotop a{z-index:1222;position:fixed;right:20px;bottom:13px;font-size:30px;color:#F40}@media screen and (max-width:800px){#backtotop{display:none!important}}.x{display:none}.iwin{width:100%;max-width:400px;font-family:Arial,sans-serif;font-size:12px!important;color:#222;text-align:left;padding:0;overflow:hidden}.iwintit{height:20px;font-size:14px!important;color:#FFF;text-align:center;background:#222;padding-top:6px;border-bottom:1px solid #FF5A00}.iwinimg{float:left;width:120px;height:70px;margin-right:7px;border:1px solid #777}.slide-in{opacity:0;transform:translateY(40px);transition:opacity .6s ease-out,transform .6s ease-out;will-change:opacity,transform}.slide-in.visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.slide-in{opacity:1;transform:none;transition:none}#threescreens img,.reveal-image img{transition:none;animation:none}}.type{display:inline-flex}.type span{word-break:break-all;height:1.2em;width:0%;overflow:hidden;animation:t 2s linear forwards}.type span:before{content:" ";display:inline-block}@keyframes t{90%,100%{width:100%}}pre{font-size:15px;color:blue}.reveal-image{position:relative;display:inline-block;overflow:hidden;line-height:0}.reveal-image img{display:block;max-width:100%;height:auto;transform:scale(1.05);animation:myImageZoom 1.2s ease forwards;will-change:transform}.reveal-image .reveal-cover{position:absolute;top:0;left:0;width:100%;height:100%;background:white;transform:translateX(0);animation:myCoverReveal 1.8s cubic-bezier(0.77,0,0.175,1) forwards;pointer-events:none}@keyframes myCoverReveal{from{transform:translateX(0)}to{transform:translateX(100%)}}@keyframes myImageZoom{from{transform:scale(1.05)}to{transform:scale(1)}}a{position:relative;text-decoration:none;color:#F40}a::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform 0.35s cubic-bezier(.4,0,.2,1)}a:hover::after,a:focus-visible::after{transform:scaleX(1);transform-origin:left}p a{color:#F40 !important;font-weight:bold;text-decoration:none}p a::before{content:"\279C ";font-size:0.8em;color:black;margin-right:2px}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}

 .frontgreg-hover {
    display: block;
    width: 100%;
    height: auto;
    cursor: pointer;
    transform-origin: center center;
    transition:
        transform 0.75s cubic-bezier(0.22, 1, 0.36, 1),
        filter 0.55s ease,
        box-shadow 0.55s ease;
    will-change: transform, filter;
}

.frontgreg-hover:hover {
    transform: scale(1.06) rotate(-0.35deg);
    filter: contrast(1.12) saturate(1.18) brightness(1.04);
    box-shadow:
        0 22px 55px rgba(0,0,0,0.28),
        0 6px 18px rgba(0,0,0,0.16);
}
