/**
* This is the base scss file.
*
* When using a "Mobile First" approach this is where
* you will start the mobile styles.
*
* When using a "Desktop first" approach this is where
* you will start the desktop styles.
*
* Create a file per size like _40em.scss or _60em.scss
* include those in a media query in your screen.css or
* directly in your ie8.css
**/
// HTML & body
// Why yes, I'm using the * selector. Before you go on a rant about how "slow" it is, let me explain. It's not.
// Not convinced? Read this (the "Performance" part): http://www.paulirish.com/2012/box-sizing-border-box-ftw/.
* {
@include box-sizing(border-box);
}
html, body {
width: 100%;
height: 100%;
}
body {
background-color: $bg-clr-body;
}
body a:focus {
outline: 0;
}
img {
max-width: 100%;
&[class^='wp-image'], &[class*=' wp-image'] {
width: auto;
height: auto;
}
}
// Header
.site-header {
position: relative;
border-bottom: 1px solid #dfdfdf;
min-height: em-calc($header-h);
}
.site-header-topbar {
@include static-padding-horizontal;
@include proper-clearfix; // Collapse the margin on the top H1
background: $header-bg-clr;
// @include background-image(linear-gradient($header-bg-clr-top, $header-bg-clr-bottom));
position: absolute;
top: 0;
left: 0;
width: 100%;
min-height: em-calc($header-h);
z-index: 2;
.light-bg & {
@include transition(0.3s background-color $linear);
background-color: $header-bg-clr-light;
}
.light-bg.opened & {
background-color: $header-bg-clr-light-alt;
}
.logo {
$logo-h: 20px;
display: block;
@include replace-text-with-dimensions("logo.png");
margin-top: em-calc(($header-h - $logo-h) / 2);
}
}
.has-header-image {
.ratio-img {
display: block;
width: 100%;
min-height: em-calc($header-h-with-image);
}
}
.parallax-overflow-wrapper {
overflow: hidden;
position: relative;
}
.site-header-parallax {
-webkit-backface-visibility: hidden; /* Chrome, Safari, Opera */
backface-visibility: hidden;
width: 100%;
height: 100%;
position: absolute;
left: 0;
top: 0;
background-position: 50% 50%;
background-repeat: no-repeat;
@include background-size(cover);
}
// Top nav collapse & expand
.js .top-nav-container {
clip: rect(0 0 0 0);
max-height: 0;
position: absolute;
display: block;
overflow: hidden;
zoom: 1;
}
.top-nav-container-inner {
padding: em-calc(20px) 0
}
.top-nav-container.opened {
max-height: 9999px;
}
.top-nav-list {
@include proper-clearfix;
@extend .unstyled;
margin: 0;
}
html .nav-toggle { // Using an extra class here to override the default link styles
@include user-select(none);
position: absolute;
top: em-calc(($header-h - $nav-btn-h) / 2);
right: em-calc($default-spacing-static);
background-color: $nav-btn-bg;
span {
display: block;
text-indent: -9999px;
width: 17px;
height: 12px;
background: image-url("hamburger-icon.gif") no-repeat 50% 0;
margin: em-calc(($nav-btn-h - 12px) / 2) em-calc(($nav-btn-w - 17px) / 2);
}
&:hover span, &:focus span {
background-position: 50% 100%;
}
}
// Top nav links
.top-nav-list {
color: $gray-3;
li {
font-size: em-calc($fs-l);
@include margin-vertical(em-calc(5px, $fs-l));
}
a {
color: $nav-link-clr;
&:hover, &:focus {
color: $nav-link-clr-action;
}
}
.current-menu-item a {
color: $nav-link-clr-action;
}
.lang-switcher {
margin-bottom: em-calc($fs-s, $fs-s);
font-size: em-calc($fs-s); // So this style is more specific than the
style
}
}
// Language switcher
.lang-switcher {
text-transform: uppercase;
font-size: em-calc($fs-s);
margin-bottom: em-calc($fs-s, $fs-s);
a {
font-weight: 500;
}
}
// Homepage header
.homepage {
.site-header {
min-height: em-calc($header-h-homepage-1);
}
}
.parallax-wrapper-homepage {
width: 100%;
height: 100%;
overflow: hidden;
}
.site-header-parallax-homepage {
background-image: image-url('header-image-homepage-1.jpg');
@include background-size(auto);
z-index: -1;
}
.homepage-title {
@include static-padding-horizontal;
text-align: center;
color: #fff;
.logo-animated {
width: em-calc(100px);
height: em-calc(100px);
margin-top: $header-h;
.hl-outlines, .hl-fill, .hl-outlines-glow {
fill: #fff;
}
.no-js & {
.hl-fill, .hl-outlines-glow {
display: none;
}
}
}
h1 {
max-width: em-calc(650px, $fs-xl);
color: #fff;
margin: 0 auto 0;
font-size: em-calc($fs-xl);
.js & {
opacity: 0;
@include translate3d(0, 50px, 0);
@include transition(all 0.25s $easeOutQuad);
&.animate-in {
opacity: 1;
@include translate3d(0, 0, 0);
}
}
}
}
.btn-availability {
$brd-thickness: 2px;
$fs-button: $fs-s;
$lh-button: $lh-s;
$padding-button-vertical: 7px;
$fs-checklist: 12px;
$lh-checklist: 17px;
$margin-checklist-item-vertical: 5px;
@include font-roboto-bold;
color: $txt-clr-btn-4;
background-color: $bg-clr-btn-4;
border: $brd-thickness solid $brd-clr-btn-4;
@include border-radius(3px);
outline: none;
overflow: hidden;
position: absolute;
text-align: left;
padding: 0;
z-index: 2;
@include transition(height 0.2s $easeInOutCubic, text-shadow 0.2s linear, background-color 0.2s linear, color 0.2s linear, border-color 0.2s linear);
@include text-shadow(0 1px 2px rgba(#000, 0.25));
height: em-calc($lh-button + (2 * $padding-button-vertical) + (2 * $brd-thickness));
width: em-calc(280px);
margin-left: em-calc(-140px);
left: 50%;
&:hover, &:focus {
border-color: rgba(#fff, 0.8);
background-color: rgba(#000, 0.3);
// Really complicated calculation using the variables above to make sure the height is correct on hover
height: em-calc(($lh-button + (2 * $padding-button-vertical)) + (4 * ($lh-checklist + $margin-checklist-item-vertical)) + $margin-checklist-item-vertical + $padding-button-vertical + (2 * $brd-thickness));
color: $txt-clr-btn-4;
}
.btn-availability-text {
font-size: em-calc($fs-button);
line-height: lh-calc($lh-button, $fs-button);
display: block;
position: relative;
padding: em-calc($padding-button-vertical, $fs-s) em-calc(45px, $fs-s) em-calc($padding-button-vertical, $fs-s) em-calc(15px, $fs-s);
&:after {
@include icon-font('icon-arrow-right');
position: absolute;
padding: em-calc($padding-button-vertical, $fs-button) em-calc(15px, $fs-button);
line-height: lh-calc($lh-button, $fs-button);
top: 0;
right: 0;
}
}
.checklist {
@include proper-clearfix;
margin: 0;
padding: 0 em-calc(15px) em-calc(7px);
li {
font-size: em-calc($fs-checklist);
color: #fff;
line-height: lh-calc($lh-checklist, $fs-checklist);
@include margin-vertical(em-calc($margin-checklist-item-vertical, $fs-checklist));
}
.checkbox, .checkmark {
width: em-calc($lh-checklist, $fs-checklist);
}
}
}
// Body
.site-body {
@include proper-clearfix;
background-color: #fff;
position: relative;
}
// Blocks of the site
.block {
@include static-padding-horizontal;
// To collapse the margins
@include proper-clearfix;
&.on-top {
position: relative;
z-index: 1;
}
.site-body & {
@include margin-vertical(em-calc($lh-default * 2));
}
}
.block-inner {
max-width: em-calc($site-w);
@include centered-by-margin;
}
.block-breakout-s {
.block-inner {
max-width: em-calc($site-w-breakout-s);
}
}
.block-outer {
&.dark {
background: $gray-3;
}
}
// Brown/grayish background color
.block-alt {
background: $content-clr-alt;
}
// Dark gray/black with noise pattern
.block-alt-2 {
background: image-url('bg-noise.png') left top repeat $content-clr-alt-3;
.multiplebgs.cssgradients & {
@include background-image(
bg-noise(),
linear-gradient(128deg, $content-clr-alt-3, $content-clr-alt-2)
);
background-position: center;
background-repeat: repeat, no-repeat;
@include background-size(auto, 100%);
}
}
// Lighter background with noise pattern (used on the homepage)
.block-alt-3 {
background: image-url('bg-grid.png') right top no-repeat $content-clr-alt-4;
}
.multiplebgs .block-alt-3 {
background-image: image-url('bg-grid.png'), bg-noise();
background-position: right top, left top;
background-repeat: no-repeat, repeat;
background-color: $content-clr-alt-4;
}
// Post loops
.loop-post {
@include proper-clearfix;
@include padding-vertical(em-calc($lh-default));
border-top: 1px dashed $gray-7;
&:first-child {
border-top: 0;
}
.title {
@include margin-vertical(0);
@include font-roboto-thin;
text-transform: none;
// line-height: lh-calc($fs-h1-1, $fs-h1-1);
}
.datepanel {
@include font-roboto;
display: block;
color: $almost-black;
}
.day:after {
content: "-";
}
}
// Single post
.single-post-date {
display: block;
@include margin-vertical(em-calc($lh-default));
color: $txt-clr-muted;
}
// Google Maps
.google-maps-container,
.google-maps-container * { @include box-sizing(content-box); }
.google-maps-container img { max-width: none; }
.google-maps-container {
min-height: 300px;
margin-bottom: $gutter-w;
}
// Contact & availability brokers
.broker {
margin-top: em-calc($lh-default * 4);
&.first {
margin-top: 0;
}
figure {
@include border-radius(50%);
overflow: hidden;
width: em-calc(84px);
height: em-calc(84px);
float: left;
margin-right: $gutter-w * 0.5;
}
}
// Panels
.panel {
display: block;
padding: em-calc($gutter-w);
background-color: $gray-5;
background-image: bg-noise();
color: #fff;
@include border-radius(3px);
h1, h2, h3, h4, h5, h6 {
color: #fff;
&:first-child {
@include margin-vertical(0);
}
}
select, input, button {
display: block;
@include margin-vertical(em-calc($lh-default / 2));
}
select, input[type="text"] {
@include font-roboto-bold;
border-color: #fff;
background-color: #fff;
color: $gray-6;
font-size: em-calc($fs-s);
padding: em-calc(7px, $fs-s);
}
button {
text-align: left;
width: 100%;
margin-bottom: 0;
}
}
.panel-blank {
#{headings()} {
color: $green;
&:first-child {
@include margin-vertical(0);
}
}
}
// This is also used on the homepage with some tweaks. See homepage section below.
.checklist {
@extend .unstyled;
margin-left: em-calc(5px);
li {
font-size: em-calc($fs-s);
line-height: lh-calc($lh-s, $fs-s);
color: $gray-6;
text-transform: uppercase;
position: relative;
padding-left: em-calc(35px);
@include margin-vertical(em-calc(5px, $fs-s));
}
.checkmark {
position: absolute;
left: 0;
z-index: 2;
@include transition(all 0.2s $easeOutCubic);
@include opacity(1);
@include transform(translate3d(0, 0, 0));
&.hidden {
@include transition(none);
@include opacity(0);
@include transform(translate3d(0, -1em, 0));
}
}
.checkbox {
margin-right: em-calc(5px, $fs-s);
position: absolute;
left: 0;
}
}
.bulletpoints {
@extend .unstyled;
li {
border-top: 1px dashed $gray-6;
position: relative;
@include padding-vertical(em-calc(10px));
@include proper-clearfix;
&:first-child {
border-top: none;
}
}
$checkbox-w-h: 22px;
.content {
display: block;
padding-left: em-calc($checkbox-w-h + 10px);
}
.checkbox {
display: block;
float: left;
background-color: #fff;
border: 2px solid rgba($gray-3, 0.5);
position: relative;
margin-top: em-calc(($lh-default - $checkbox-w-h) / 2);
width: em-calc($checkbox-w-h);
height: em-calc($checkbox-w-h);
@include border-radius(2px);
}
.checkmark {
@include transition(all 0.2s $easeOutCubic);
@include opacity(1);
@include transform(translate3d(0, 0, 0));
position: absolute;
display: block;
width: 100%;
height: 100%;
background: image-url('checkmark.png') 50% 50% no-repeat;
&.hidden {
@include transition(none);
@include opacity(0);
@include transform(translate3d(0, -1em, 0));
}
}
}
// Gallery
.gallery {
@include margin-vertical(em-calc($lh-default));
%global-column-styles {
@include padding-horizontal(em-calc($gallery-spacing / 2));
float: left;
}
@for $i from 1 through $cols {
.col-#{$i} {
@extend %global-column-styles;
width: col-calc($i);
}
.col-l-#{$i} {
margin-left: col-calc($i);
}
.col-r-#{$i} {
margin-right: col-calc($i);
}
}
.col-row {
@include proper-clearfix;
@include margin-horizontal(-($gallery-spacing / 2));
margin-top: em-calc($gallery-spacing);
&:first-child {
margin-top: 0;
}
}
.gallery-image-container {
@include proper-clearfix;
}
.gallery-image-link, .gallery-image {
display: block;
@include centered-by-margin;
}
.gallery-image-link {
max-width: 100%;
position: relative;
&:hover {
.border-overlay {
border-width: em-calc(4px);
}
}
}
.gallery-image {
@include transition(all 0.2s $easeInOutQuad);
}
.border-overlay {
width: 100%;
height: 100%;
display: block;
position: absolute;
left: 0;
top: 0;
z-index: 2;
border: 0 solid rgba(#fff, 0.4);
@include transition(border-width 0.2s $easeInOutQuad);
}
}
// Pagination
.pagination {
@extend .btn-group;
a, span {
@extend .btn;
float: left;
padding: em-calc(7px, $fs-s);
&:after {
content: none;
}
}
span {
cursor: default;
color: $gray-3;
@include font-roboto;
&:hover {
color: $gray-3;
border-color: $brd-clr-btn-1;
}
}
}
// Interactive map
.interactive-map-ratio-wrapper {
$ratio-w: 16;
$ratio-h: 9;
height: 0;
padding-bottom: ((100 / $ratio-w) * $ratio-h) + 0%;
position: relative;
overflow: hidden;
}
.interactive-map {
width: 100%;
height: 100%;
position: absolute;
.image-slider, .slides-container {
width: 100%;
height: 100%;
}
.slide {
position: absolute;
top: 0;
width: 100%;
height: 100%;
&:first-child {
z-index: 10;
}
.map {
width: 100%;
}
}
.slide-inner {
position: absolute;
width: 100%;
top: 50%;
@include transform-origin(center, center);
@include transform2d(translateY(-50%));
}
.interactive-map-overlay {
z-index: 9;
background-color: #fff;
padding: em-calc(5px) em-calc(10px);
position: absolute;
@include border-radius(2px);
@include box-shadow(0px 1px 5px rgba(0, 0, 0, 0.25));
@include opacity(0);
@include transform-origin(left, top);
h4 {
@include margin-vertical(0);
font-size: em-calc($fs-s);
}
}
.icon {
position: absolute;
z-index: 10;
width: 2.3%;
display: block;
@include opacity(0);
@include transform-origin(center, center);
@include transform2d(translate(-50%, -50%) scale(0.1));
}
.icon-dot {
// @include border-radius(50%);
width: 2.5%;
height: auto;
// padding-bottom: 2.5%;
@include opacity(1);
@include transform2d(translate(-50%, -50%));
}
.icon-dot-green {
background-color: $green;
}
.icon-dot-orange {
// background-color: $orange;
}
.icon-dot-title {
position: absolute;
z-index: 10;
font-size: em-calc($fs-xs);
line-height: lh-calc($fs-xs, $fs-xs);
@include transform-origin(center, bottom);
@include transform2d(translate(-50%, -100%));
margin-top: -0.8%;
}
.icon-dot-title-small {
font-size: em-calc($fs-xxs);
line-height: lh-calc($fs-xxs, $fs-xxs);
margin-top: -0.8%;
}
// Slide Europe
.slide-europe-inner {
@include transform2d(translateY(-60%) scale(1.3));
}
.icon-dot-title-europe {
@include transform2d(translate(-50%, -100%) scale((1/2)));
}
.interactive-map-overlay-london {
left: 30%;
top: 63%;
@include transform-origin(center, center);
@include transform2d(translate(-60%, -50%) scale((1/2.2)));
}
.interactive-map-overlay-berlin {
right: 23.8%;
top: 45.8%;
@include transform-origin(right, top);
@include transform2d(scale((1/2)) translateX(-10%));
}
.icon-kennedy-europe {
left: 48.58%;
top: 51.58%;
width: 2% !important;
@include transform-origin(center, bottom);
@include opacity(1);
@include transform2d(translate(-50%, -1500%) scale(1));
z-index: 15;
}
.icon-kennedy-europe-shadow {
left: 48.58%;
top: 51.58%;
width: 2% !important;
height: 0;
padding-bottom: 0.75%;
@include transform2d(translate(-50%, -50%) scaleX(3));
@include background-image(radial-gradient(center, ellipse contain, rgba(#000, 0.5) 0%, rgba(#000, 0) 100%));
}
.icon-dot-europe {
width: 1.2%;
}
.icon-dot-europe-small {
width: 0.8%;
}
.icon-dot-amsterdam, .icon-dot-title-amsterdam {
left: 47%;
top: 42.8%;
}
.icon-dot-rotterdam, .icon-dot-title-rotterdam {
left: 44.85%;
top: 47.35%;
}
.icon-dot-antwerp, .icon-dot-title-antwerp {
left: 44.45%;
top: 53.7%;
}
.icon-dot-brussels, .icon-dot-title-brussels {
left: 44%;
top: 57.3%;
}
.icon-dot-dusseldorf, .icon-dot-title-dusseldorf {
left: 53.4%;
top: 54.7%;
}
.icon-dot-hamburg, .icon-dot-title-hamburg {
left: 65.9%;
top: 33.1%;
}
.icon-dot-berlin, .icon-dot-title-berlin {
left: 78%;
top: 44.3%;
}
.icon-dot-london, .icon-dot-title-london {
left: 28.1%;
top: 46.59%;
}
.icon-dot-luxemburg, .icon-dot-title-luxemburg {
left: 50.1%;
top: 70.3%;
}
.icon-dot-paris, .icon-dot-title-paris {
left: 35.1%;
top: 75.7%;
}
// Slide Eindhoven
.slide-eindhoven-inner {
@include transform2d(translateY(-50%) scale(1.3));
}
.icon-dot-eindhoven {
width: 1.2%;
}
.icon-dot-eindhoven {
@include opacity(0);
@include transform2d(translate(-50%, -50%) scale(0.1));
}
.icon-dot-title-eindhoven {
text-align: center;
@include opacity(0);
@include transform2d(translate(-50%, -250%));
}
.icon-kennedy-eindhoven {
left: 50.7%;
top: 45.8%;
width: 2% !important;
@include transform-origin(center, bottom);
@include opacity(1);
@include transform2d(translate(-50%, -1000%) scale(1));
z-index: 15;
}
.icon-kennedy-eindhoven-shadow {
left: 50.7%;
top: 45.8%;
width: 2% !important;
height: 0;
padding-bottom: 0.75%;
@include transform2d(translate(-50%, -50%) scaleX(3));
@include background-image(radial-gradient(center, ellipse contain, rgba(#000, 0.5) 0%, rgba(#000, 0) 100%));
}
.interactive-map-overlay-campus {
left: 48%;
top: 56%;
@include transform-origin(center, center);
@include transform2d(translate(-50%, -70%) scale((1/1.8)));
}
.icon-dot-tue, .icon-dot-title-tue {
left: 52.6%;
top: 43%;
}
.icon-dot-daf, .icon-dot-title-daf {
left: 60.2%;
top: 54.8%;
}
.icon-dot-vdl, .icon-dot-title-vdl {
left: 36.8%;
top: 53.7%;
}
.icon-dot-high-tech-campus, .icon-dot-title-high-tech-campus {
left: 43.87%;
top: 70.7%;
}
.icon-dot-asml, .icon-dot-title-asml {
left: 31.77%;
top: 76.5%;
}
.icon-dot-eindhoven-airport, .icon-dot-title-eindhoven-airport {
left: 19.8%;
top: 38%;
}
.icon-dot-philips-healthcare, .icon-dot-title-philips-healthcare {
left: 21.6%;
top: 10.5%;
}
.icon-dot-automotive-campus, .icon-dot-title-automotive-campus {
left: 89.9%;
top: 22.6%;
}
// Slide street
.slide-street-inner {
@include transform2d(translateY(-50%) scale(1.25));
}
.interactive-map-overlay-street-legenda {
left: 1%;
bottom: 2%;
@include opacity(0);
@include transform2d(translateX(10%));
font-size: em-calc($fs-s);
img {
width: em-calc($fs-s, $fs-s);
}
}
// Kennedy location
.icon-kennedy-street {
left: 50.95%;
top: 33.4%;
width: 3%;
@include transform-origin(center, bottom);
@include opacity(1);
@include transform2d(translate(-50%, -500%) scale(1));
z-index: 15;
}
.icon-kennedy-street-shadow {
left: 50.95%;
top: 33.4%;
width: 3%;
height: 0;
padding-bottom: 0.75%;
@include transform2d(translate(-50%, -50%) scaleX(3));
@include background-image(radial-gradient(center, ellipse contain, rgba(#000, 0.5) 0%, rgba(#000, 0) 100%));
}
// Station overlay
.interactive-map-overlay-cs {
left: 50.7%;
top: 39.7%;
@include transform2d(scale((1/4)) translateX(10%));
}
.icon-station {
left: 49.4%;
top: 39%;
width: 2.5%;
}
// Parking icons
.icon-parking-1 {
left: 48.8%;
top: 31.8%;
}
.icon-parking-2 {
left: 46.4%;
top: 44%;
}
.icon-parking-3 {
left: 51.8%;
top: 44.8%;
}
.icon-parking-4 {
left: 39.4%;
top: 39%;
}
.icon-parking-5 {
left: 58%;
top: 42.4%;
}
.icon-parking-6 {
left: 63.6%;
top: 41%;
}
.icon-parking-7 {
left: 36.3%;
top: 47%;
}
.icon-parking-8 {
left: 56.2%;
top: 54%;
}
.icon-parking-9 {
left: 39.9%;
top: 58.2%;
}
.icon-parking-10 {
left: 56.3%;
top: 61.5%;
}
.icon-parking-11 {
left: 52.2%;
top: 68.8%;
}
// Hotel icons
.icon-hotel-1 {
left: 40.1%;
top: 29.4%;
}
.icon-hotel-2 {
left: 49.9%;
top: 55.1%;
}
.icon-hotel-3 {
left: 47.5%;
top: 57%;
}
.icon-hotel-4 {
left: 48.9%;
top: 58.3%;
}
.icon-hotel-5 {
left: 35.6%;
top: 53.6%;
}
.icon-hotel-6 {
left: 54.5%;
top: 63.2%;
}
.icon-hotel-7 {
left: 44.5%;
top: 70.7%;
}
.icon-hotel-8 {
left: 44.1%;
top: 74.8%;
}
}
.map-nav {
text-align: center;
ul {
display: inline-block;
// vertical-align: middle;
@include border-radius(2px);
@extend .unstyled;
@include proper-clearfix;
background-color: #fff;
@include box-shadow(0px 1px 5px rgba(0, 0, 0, 0.25));
padding: em-calc(10px);
margin: em-calc(10px) 0 0;
}
li {
display: block;
float: left;
@include margin-horizontal(em-calc(7px));
}
a {
@include transition(all 0.5s $easeOutCubic);
@include border-radius(50%);
background-color: $gray-6;
display: block;
width: em-calc(31px);
height: em-calc(31px);
border: em-calc(12px) solid #fff;
&.active {
background-color: #fff;
border-color: $green;
}
}
}
.no-animation {
.interactive-map {
.slide {
-webkit-transform: translateZ(0);
-webkit-perspective: 1000;
-webkit-backface-visibility: hidden;
}
.slide-europe-inner {
@include transform2d(translateY(-50%) scale(1.1));
.interactive-map-overlay {
@include opacity(1);
}
.interactive-map-overlay-london {
@include transform2d(translate(-60%, -50%) scale((1/1.6)));
}
.interactive-map-overlay-berlin {
@include transform2d(scale((1/1.6)));
}
}
.slide-eindhoven-inner {
@include transform2d(translateY(-50%) scale(1.1));
.icon {
@include opacity(1);
}
.icon-kennedy-eindhoven {
@include translate(-50%, -100%);
}
.icon-kennedy-eindhoven-shadow {
@include transform2d(translate(-50%, -50%) scaleX(1));
}
.interactive-map-overlay {
@include opacity(1);
}
.icon-dot-eindhoven {
@include opacity(1);
@include transform2d(translate(-50%, -50%) scale(1));
}
.icon-dot-title {
@include opacity(1);
@include transform2d(translate(-50%, -100%));
}
.interactive-map-overlay-campus {
left: 58%;
top: 81%;
}
}
.slide-street-inner {
.interactive-map-overlay-cs {
@include opacity(1);
@include transform2d(scale((1/1.5)));
left: 53%;
top: 20%;
}
.icon {
@include transform2d(translate(-50%, -50%) scale(1));
@include opacity(1);
}
.icon-kennedy-street {
@include transform2d(translate(-50%, -100%) scale(1));
}
}
.interactive-map-overlay-street-legenda {
@include opacity(1);
@include translateX(0);
}
}
}
.image-slider {
.image-container {
img {
display: block;
position: absolute;
top: 0;
left: 0;
@include opacity(0);
@include transition(opacity 0.5s);
&.show {
@include opacity(1);
}
}
}
}
// Footer
.site-footer {
text-transform: uppercase;
text-align: center;
background: bg-noise-dark() left top repeat;
position: relative;
a {
// color: #fff;
// &:hover, &:focus {
// color: #919191;
// }
}
}
.site-footer-nav-row {
@include margin-vertical(em-calc($lh-default));
.right {
@include margin-vertical(em-calc($lh-default - 10px));
}
.btn-rounded {
font-size: em-calc($fs-xs);
margin: em-calc(10px, $fs-xs) em-calc(10px, $fs-xs);
}
}
.footer-logo {
width: 50%;
height: 100%; // So safari scales it properly
max-width: em-calc(100px);
display: block;
@include centered-by-margin;
@include margin-vertical(em-calc($lh-default));
path {
fill: $gray-3;
}
}
.footer-nav-list {
@extend .unstyled;
@include margin-vertical(0);
li {
line-height: lh-calc($lh-s, $fs-s);
font-size: em-calc($fs-s);
}
a {
@include font-roboto-bold;
color: $gray-3;
&:hover, &:focus {
color: #fff;
}
}
.current-menu-item a {
color: #fff;
}
}
.site-footer-meta {
border-top: 1px solid rgba(#353535, 0.5);
text-transform: uppercase;
color: #5e5e5e;
@include padding-vertical(em-calc($lh-default, $fs-xs));
font-size: em-calc($fs-xs);
a {
color: #5e5e5e;
&:hover, &:focus {
color: #fff;
}
}
}
// Homepage
.header-availability-wrapper {
@include centered-by-margin;
max-width: em-calc(300px);
position: relative;
}
.bulletpoints-dropdown {
position: absolute;
background-color: $gray-7;
text-align: left;
margin-top: 0;
@include opacity(1);
@include transform(translate3d(0, 0, 0));
@include transition(all 0.2s $easeOutCubic);
@include border-radius(3px);
@include box-shadow(0px 5px 10px rgba(#000, 0.2));
margin-top: em-calc(10px);
margin-bottom: 0;
li {
color: darken($gray-3, 20%);
@include font-roboto-bold;
@include margin-horizontal(em-calc(15px));
}
&.hidden {
@include transition(all 0.2s $easeInCubic);
@include opacity(0);
@include transform(translate3d(0, 50px, 0));
}
}
.homepage-intro-text {
text-align: center;
color: #525252;
font-size: em-calc(18px);
margin-bottom: em-calc(60px);
}
.homepage-gray-header {
text-align: center;
text-transform: uppercase;
@include margin-vertical(0);
// margin-top: em-calc(70px, $fs-2);
// margin-bottom: em-calc(20px, $fs-2);
background: image-url('dotted-border.png') 0 100% repeat-x;
span {
@include padding-vertical(em-calc(52px, $fs-2));
display: block;
background: image-url('dotted-border.png') 0 0 repeat-x;
}
}
.green-labels {
@include proper-clearfix;
text-align: center;
margin-bottom: em-calc(52px);
max-width: em-calc(700px);
@include centered-by-margin;
.image {
float: left;
width: 30%;
margin-left: 5%;
&:first-child {
margin-left: 0;
}
}
.title {
display: block;
color: $gray-2;
// font-weight: normal;
font-size: em-calc($fs-4);
@include margin-vertical(0);
@include transition(0.2s color linear);
}
a:hover, a:focus {
.title {
color: $txt-clr-link-alt;
}
}
}
// Availability
.contact-block {
// display: none;
/* position: fixed;
top: 100%;
bottom: auto;
width: 100%;
background: #fff;
z-index: 2;
@include transition(all 0.5s $easeInOutQuad);
&.show {
bottom: 0;
top: auto;
} */
}
// Media block
.site-body .block-media { // Extra html class to override the default block class
margin-bottom: 0;
}
.block-inner-media {
@include margin-vertical(em-calc(50px));
.item {
display: block;
position: relative;
overflow: hidden;
@include transition(box-shadow 0.2s $easeInOutQuad);
.item-inner {
display: block;
overflow: hidden;
}
img {
display: block;
@include transform-origin(center);
@include transition(transform 4s $easeOutQuad);
}
.border-overlay {
display: block;
width: 100%;
height: 100%;
position: absolute;
left: 0;
top: 0;
z-index: 3;
border: 0 solid rgba(#fff, 0.4);
@include transition(all 0.2s $easeInOutQuad);
}
.btn-play, h3, .link-inner {
position: absolute;
z-index: 2;
}
.btn-play {
left: 50%;
top: 50%;
margin-left: -40px;
margin-top: -40px;
}
h3 {
margin: 0;
width: 90%;
font-size: em-calc($fs-5);
color: #fff;
top: 10%;
left: 5%;
}
.link-inner {
left: 5%;
bottom: 10%;
color: #fff;
text-transform: uppercase;
font-size: em-calc(14px);
}
&:hover, &:focus {
img {
@include transform(scale(1.1));
}
.border-overlay {
border-width: em-calc(4px);
}
}
}
.item-video {
@include background-size(cover);
display: block;
width: 100%;
.btn-play path {
@include transform-origin(center);
@include transition(transform 0.2s $easeInOutQuad);
}
&:hover, &:focus {
.btn-play path {
@include transform(scale(1.1));
}
}
}
.item-city, .item-tower {
margin-top: em-calc(10px);
}
}
.btn-play {
width: 80px;
height: 80px;
}
.btn-rounded {
@include border-radius(27px); // height (54) / 2
padding: em-calc(13px) em-calc(27px);
display: inline-block;
border: 1px solid #353535;
}
// Sustainable page
.block-sustainable-highlight {
@include padding-vertical(em-calc($lh-default * 2));
background: image-url('highlight-tower-1.jpg') 50% 50% no-repeat;
@include background-size(cover);
color: #fff;
#{headings()} {
color: #fff;
}
}
.block-sustainable-rows {
#{headings()} {
margin-bottom: 0;
}
p, ul, ol {
margin-bottom: 0;
}
hr {
margin-top: em-calc($lh-default);
}
}
// Video on building page
.timelapse {
.header-video {
background: image-url('timelapse-fallback.jpg') 50%;
background-size: cover;
}
}
html.video {
.timelapse {
.header-video-inner {
display: none;
}
.video-loading {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
width: 100%;
height: 100%;
background: $almost-black;
display: none;
&:before {
content: '';
position: absolute;
top: 0;
left: 0;
bottom: 0;
right: 0;
width: 100%;
height: 100%;
background-image: bg-noise();
@include opacity(0.3);
display: none;
}
.graphic {
width: 60px;
height: 60px;
position: absolute;
left: 50%;
top: 50%;
margin-left: -30px;
margin-top: -30px;
background: image-url('logo-anim.gif');
display: none;
}
&.show {
display: block;
.graphic, &:before {
display: block;
}
}
}
video {
@include opacity(0);
display: none;
}
.buttons {
z-index: 10;
display: block;
position: absolute;
width: em-calc(52px);
right: em-calc(40px);
top: 50%;
margin-top: em-calc(40px);
@include transform-origin(center, center);
@include transform2d(translateY(-50%));
display: none;
.locations {
background: #fff;
padding: em-calc(12px);
margin-bottom: em-calc(10px);
@include border-radius(em-calc(2px));
@include box-shadow(rgba(0,0,0,0.2) 0 em-calc(1px) em-calc(3px));
svg {
display: inline-block;
position: relative;
left: -1px;
}
.location {
display: block;
width: 100%;
text-align: center;
@include font-roboto-bold;
color: $gray-6;
padding-top: em-calc(8px);
border-top: 1px solid $gray-7;
padding-bottom: em-calc(8px);
&:nth-child(2) {
padding-top: 0;
border-top: 0;
}
&:last-child {
padding-bottom: 0;
}
&.active {
color: $green;
}
}
}
.day-night {
background: #fff;
padding: em-calc(18px) em-calc(12px);
@include border-radius(em-calc(2px));
@include box-shadow(rgba(0,0,0,0.2) 0 em-calc(1px) em-calc(3px));
a {
display: block;
width: 100%;
text-align: center;
path, polygon, svg {
fill: $gray-6;
@include transition(fill 0.2s);
}
&.day {
padding-bottom: em-calc(8px);
border-bottom: 1px solid $gray-7;
}
&.night {
padding-top: em-calc(8px);
height: em-calc(29px);
}
&.active {
path, polygon, svg {
fill: $green;
}
}
}
}
}
}
}
.aspect-21-9 {
position: relative;
margin-bottom: -1px;
width: 100%;
z-index: 1;
&:before {
content: "";
display: block;
padding-top: 42.85714285714286%;
overflow: hidden;
}
video, iframe, embed {
position: absolute;
left: 0;
right: 0;
bottom: 0;
width: 100%;
height: 100%;
}
}
// Availibility building graphic
.availability-interactive, .building-interactive {
-webkit-transform: translate3d(0, 0, 0);
-moz-transform: translate3d(0, 0, 0);
-ms-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
background: #222;
min-height: 1109px;
overflow: hidden;
position: relative;
padding: 0 2em;
background: image-url('usp-background-small.jpg');
background-color: #111;
background-position: center top;
background-repeat: no-repeat;
background-size: cover;
background-attachment: fixed;
z-index: 0;
&.loaded {
background-position: center 30%;
}
.building {
-webkit-transform: translate3d(0, 0, 0);
-moz-transform: translate3d(0, 0, 0);
-ms-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
top: 4em;
position: absolute;
left: 50%;
width: 900px;
// @include transform(translateY(200px));
// @include transition(transform 0.2s $linear);
// @include transform(translateY(200px));
/* &.intro {
@include transform(translateY(0));
} */
}
.building-graphic {
width: 100%;
// cursor: ns-resize;
img {
width: 100%;
height: auto;
}
}
&.dusk {
background-image: image-url('usp-background-dusk-small.jpg');
background-attachment: scroll;
background-size: auto;
min-height: 500px;
.building {
// left: auto;
// right: 50%;
width: 769px;
@include transform(translateY(50px));
}
}
.usps {
position: absolute;
z-index: -1;
top: 0;
left: 0;
width: 45%;
height: 100%;
.usp {
position: absolute;
top: 50%;
right: 0%;
@include transform(translateY(-50%));
color: #fff;
@include font-nudista-thin;
@include opacity(0);
@include transition(opacity 0.5s);
text-align: right;
&.show {
@include opacity(1);
}
.label {
font-size: em-calc(26px);
line-height: 1em;
letter-spacing: em-calc(-10px, 166px);
margin-left: em-calc(-10px, 166px);
}
.description {
font-size: em-calc(16px);
line-height: 1em;
text-transform: uppercase;
@include font-nudista;
}
&.usp-1 {
.label {
font-size: em-calc(58px);
}
.description {
}
}
&.usp-2 {
.label {
font-size: em-calc(75px);
}
.description {
font-size: em-calc(15px);
}
}
&.usp-3 {
.label {
font-size: em-calc(183px);
margin-left: 0;
}
.description {
font-size: em-calc(18px);
}
}
svg {
width: 70%;
path {
fill: rgba(255,255,255,0.9);
-webkit-filter: drop-shadow(1px 1px 5px rgba(0,0,0,0.2));
}
}
}
}
.usp-nav {
display: none;
$usp-nav-btn-size: 40px;
position: absolute;
width: $usp-nav-btn-size;
right: 1em;
top: 50%;
@include transform(translateY(-50%));
&:before {
display: block;
position: absolute;
left: 50%;
top: $usp-nav-btn-size * 0.5;
width: 1px;
margin-left: -1px;
bottom: $usp-nav-btn-size * 0.5;
content: '';
background: #a5967d;
}
a {
position: relative;
display: block;
margin-top: 5px;
width: $usp-nav-btn-size;
height: $usp-nav-btn-size;
@include border-radius(50%);
&:first-child {
margin-top: 0;
}
@include transition(font-size 0.1s $easeInOutQuad);
cursor: pointer;
&:before {
content: '';
display: block;
position: absolute;
width: 4px;
height: 4px;
left: 50%;
top: 50%;
margin-left: -2px;
margin-top: -2px;
background: $orange;
@include border-radius(50%);
@include transition(all 0.2s $easeInOutQuad);
}
&:after {
content: '';
display: block;
position: absolute;
width: 6px;
height: 6px;
left: 50%;
top: 50%;
margin-left: -3px;
margin-top: -3px;
background: #736957;
@include border-radius(50%);
@include transition(all 0.2s $easeInOutQuad);
}
&:hover, &.active {
&:before {
width: 30px;
height: 30px;
left: 50%;
top: 50%;
margin-left: -15px;
margin-top: -15px;
}
&:after {
background: #fff;
}
}
}
}
.anchors {
list-style: none;
padding: 0;
margin: 0;
position: absolute;
left: -80px;
top: 0;
bottom: 0;
right: 59.5%;
li {
list-style: none;
margin: 0;
height: 4.2%;
width: 100%;
position: absolute;
@include transform(translateY(-50%));
a {
position: absolute;
display: block;
left: 0;
right: 0;
top: 0;
bottom: 0;
cursor: pointer;
background: image-url('pix.gif') left top repeat; // I can't beleive I have to add a background to make this work in IE9...
@include transition(all 0.2s);
.bullet {
width: 30px;
height: 30px;
position: absolute;
top: 50%;
margin-top: -15px;
left: 20px;
&:before {
content: '';
position: absolute;
@include border-radius(50%);
background: $green;
position: absolute;
top: 50%;
left: 50%;
width: 0;
height: 0;
margin-top: 0;
margin-left: 0;
@include transition(all 0.2s $easeOutQuad);
}
&:after {
content: '';
position: absolute;
background: white;
width: 6px;
height: 6px;
@include border-radius(50%);
position: absolute;
top: 50%;
left: 50%;
margin-top: -3px;
margin-left: -3px;
}
}
&.active, &.visited, &:hover, &:focus {
top: -5px;
bottom: -5px;
right: -5px;
// border: 2px solid #fff;
border-left: 0;
@include border-radius(0 5px 5px 0);
@include background-image(linear-gradient(to right, rgba(255,255,255,0), rgba(255,255,255, 0.3)));
.bullet:before {
width: 30px;
height: 30px;
margin-top: -15px;
margin-left: -15px;
}
}
&.visited {
.bullet:before {
background: $orange;
}
&:hover .bullet:before {
background: $green;
}
}
.floor-number {
position: absolute;
line-height: 18px;
font-size: 18px;
top: 50%;
left: -10px;
@include transform(translateY(-50%));
@include font-nudista-bold;
color: white;
@include text-shadow(rgba(0,0,0,0.2) 0 2px 4px);
}
&.inactive {
.bullet {
&:before {
background: $gray-3;
}
&:after {
background: $almost-black;
}
}
.floor-number {
color: $almost-black;
@include text-shadow(none);
@include font-nudista;
}
&.active, &.visited, &:hover, &:focus {
// background: $green;
@include background-image(linear-gradient(to right, rgba(0,0,0,0), rgba(0,0,0, 0.3)));
}
}
}
}
}
}
.building-interactive {
&.no-parallax {
min-height: em-calc(900px);
.usps {
.usp {
@include opacity(1);
svg {
max-width: 100%;
}
}
.usp-1 {
top: 23%;
max-width: em-calc(270px);
}
.usp-2 {
top: 50%;
max-width: em-calc(230px);
}
.usp-3 {
top: 80%;
max-width: em-calc(180px);
}
}
}
}
.availability-panel {
.content {
background: #fff;
position: fixed;
z-index: 2;
top: 50%;
left: 50%;
width: 90%;
max-width: em-calc(600px);
min-height: 10px;
@include border-radius(2px);
@include box-shadow(rgba(0,0,0,0.2) 0 2px 5px);
display: none;
@include transition(opacity 0.5s $easeInOutQuad);
@include transform(translate(-50%, -50%));
padding: 1em;
.close {
position: absolute;
display: block;
right: 0;
top: 0;
width: 42px;
height: 42px;
font-size: 28px;
font-family: Arial, Baskerville, monospace;
color: lighten($almost-black, 30);
line-height: 42px;
text-align: center;
&:hover {
color: $almost-black;
}
}
h4 {
margin: 0;
color: $gray-3;
}
.h1 {
margin: 0;
@include font-nudista-bold;
text-transform: none;
color: $almost-black;
margin-bottom: 0.5em;
}
}
.bg {
position: fixed;
background: rgba(0,0,0,0.6);
top: 0;
left: 0;
right: 0;
bottom: 0;
display: none;
}
&.show {
.content {
display: block;
}
.bg {
display: block;
}
}
}