@media screen and (max-width: 1100px) {
	.floating-bar {
		height: 64px;
	}
	.floating-bar .wrapper {
		margin: 0 12px;
	}
	.floating-bar .icons {
		top: 10px;
	}
	.logo {
		top: 10px;
	}
	.floating-bar .menu-center {
		top: 0px;
		left: 50%;
		transform: translateX(-50%);
		float: none;
		margin: 0 auto;
		width: 100%;
		max-width: 300px;
		padding: 0px;
		position: absolute;
		max-height: 36px;
		transition: all linear 300ms;
		overflow: hidden;
		font-size: 16px;
		background-color: #f0f0f0;
		padding-top: 12px;
		z-index: 9999;
	}
	.floating-bar .menu-center.active {
		max-height: 600px;
		padding-bottom: 1em;
/*
		-webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.4);
		-moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.4);
		box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.4);
*/
	}
	.floating-bar .menu-center a {
		background-color: #f0f0f0;
		display: block !important;
		text-align: center;
		padding: 0.5em 1em;
		margin: 0;
	}
	.floating-bar .menu-center a.placeholder {
	}
	.floating-bar .menu-center a.placeholder:before {
		content: ' ';
		display: inline-block;
		vertical-align: middle;
		width: 14px;
		height: 14px;
		background: transparent url(../img/icon-download-more.svg) center center no-repeat;
		background-size: contain;
		margin-right: 0.8em;
		transform: rotateZ(90deg);
		font-weight: normal;
	}
}
@media screen and (orientation: landscape) {
	.mobile-only {
		display: none !important;
	}
	.s2 {
		max-height: 560px;
	}
	.s3 {
		max-height: 740px;
	}
	.s4 {
		max-height: 560px;
	}
	.s5 {
		height: 85vh;
		max-height: 760px;
	}
	.s6 {
		max-height: 580px;
	}
	.s7 {
		min-height: 540px;
		max-height: 600px;
	}
	.stickies .sticky {
		max-height: 260px;
	}
}
@media screen and (min-height: 900px) {
	.box .title, .section .title {
		font-size: 42px;
	}
}
@media screen and (min-width: 901px) and (orientation:landscape) {
	.stickies .sticky {
		padding-left: 6%;
	}
}
@media screen and (min-height: 1001px) and (orientation:landscape) {
	.stickies .sticky {
		font-size: 18px;
	}
	.stickies .sticky .sticky-num .sticky-pre {
		font-size: 3em;
	}
}
@media screen and (orientation:portrait), 
	screen and (max-width: 900px) {
	.stickies .sticky {
		font-size: 1.6vw;
		height: 20vw;
	}
	.stickies .sticky .sticky-num .sticky-pre {
		font-size: 4.5vw;
	}
}

@media screen and (max-aspect-ratio: 3/2) {
	.debug-viewport {
		background-color: blue !important;
	}
	.debug-viewport:after {
		content: ' 3/2 ';
		display: inline-block;
	}
}
@media screen and (max-aspect-ratio: 4/3) {
	.debug-viewport {
		background-color: green !important;
	}
	.debug-viewport:after {
		content: ' 4/3 ';
		display: inline-block;
	}
	.s7 .hero {
		height: 58vh;
		top: 0px;
	}
	
}

/* iPad landscape */

@media all and (device-width: 1024px) and (device-height: 768px) and (orientation:landscape) {
	.s7 .hero {
		height: 58vh;
		top: 0px;
	}
	.s6 {
		height: 70vh;
	}
	.highlight-box {
		width: 75vw;
	}
	.stickies .sticky {
		font-size: 1.6vh;
		height: 21vh;
	}
	.stickies .sticky .sticky-num .sticky-pre {
		font-size: 5vh;
	}
}

@media screen and (orientation:portrait) {
	.desktop-only {
		display: none !important;
	}
	.inner-header .back-action {
		margin-top: 2em;
	}
	.video-intro {
		max-width: none;
		width: auto;
		height: 80vh;
		margin-top: 64px;
		position: relative;
	}
	.video-intro video {
		height: 100%;
		width: auto;
		left: 50%;
		top: 0px;
		transform: translateX(-53%);
		position: absolute;
	}
	.box .content, .section .content {
		width: auto;
		margin-left: 0;
		padding-bottom: 0;
	}
	.box .title, .section .title {
		font-size: 6vw;
		margin: 0 !important;
		padding: 36px 36px 0px !important;
		text-align: left;
	}
	.section {
		height: auto;
	}
	.s1.section {
		height: 95vh;
	}
	.section .limit-width {
		padding-left: 0;
		padding-right: 0;
	}
	.section .hero {
		position: relative;
		height: auto;
		max-height: none;
		left: auto;
		margin-top: 0px;
		width: 100%;
	}
	.section .hero .human {
		height: auto;
		width: 100%;
	}
	.section .hero .human img {
		height: auto;
		width: 100%;
	}
	.s2 .content {
		padding-bottom: 15vw;
		margin-top: 0px;
	}
	.s2 .fix-bg {
		background-color: #b45076;
		margin-top: -2em;
	} 
	
	.s3 .title {
		text-align: left;
	}
	.s3 .content {
		background-image: none;
		padding: 36px;
		background-color: #ffffff;
	}
	.s3 .s3-gradient {
		content: ' ';
		display: block;
		height: 10vw;
		margin-top: -25vw;
		background: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
	}
	.s3 .next-cover {
		position: relative;
	}
	.s3 .hero .human .splash-1 {
		background-image: url(../img/person-ceo-mobile.png);
	}
	
	.highlight-box {
		margin-top: 1em;
		width: 90%;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 55vw;
	}
	.s4 {
		background-position: right bottom;
		background-size: 70% auto;
	}
	.highlight .glance-box {
		
	}
	.highlight .glance-box img {
	
	}
	.slick-dots {
		text-align: center;
	}
	.s4 .next-cover {
		position: relative;
	}
	.s4 .next-splash {
		width: 60%;
		height: 50%;
	}
	.s4 .next-splash img {
		width: 100%;
		height: auto;
	}
	.s4 .custom-actions {
		padding-top: 36px;
	}
	.stickies {
		margin-top: 5vw;
	}
	.stickies .sticky, .stickies .sticky.alt {
		height: auto;
		width: 100%;
		padding: 0px;
		background: none;
	}
	.stickies .sticky:hover {
		transform: none;
	}
	.stickies .sticky .sticky-wrap {
		width: 80%;
		height: auto;
		display: block;
		margin: 0 auto;
		position: relative;
		transition: all 400ms;
		background: transparent url(../img/sticky-1.png) center top no-repeat;
		background-size: 100% 100%;
		color: #009FBC;
		text-align: left;
		box-sizing: border-box;
		padding: 1em 1em 3em 3.2em;
		vertical-align: top;
		font-size: 3vw;
		transform: translateX(-1em);
	}
	.stickies .sticky.alt .sticky-wrap {
		background-image: url(../img/sticky-2.png);
	}
	.stickies .sticky .sticky-num .sticky-pre {
		font-size: 3em;
	}
	
	.s5 .next-cover {
	}
	.s5 .bg2 {
		background-size: 140% auto;
		background-position: right bottom;
	}
	.s5 .baby {
		width: 100%;
		position: relative;
	}
	.s5 .baby img {
		width: 80%;
	}
	.s6 .content {
		margin-top: 0px;
		padding: 12px 36px 0px;
		background: none;
	}
	
	.s6 .content .actions .main-actions,
	.s6 .content .actions .main-actions.secondary {
		display: block;
		margin-bottom: 24px;
	}
	.s6 .hero {
		width: 80%;
		margin: 0 auto 0 !important;
	}
	.s6 .next-cover {
		height: 15vw;
	}
	.s8 .content .download-item .download-action a {
		font-size: 18px;
	}
	.s7 .content {
		padding: 0px 36px 0px;
		margin: 0px;
	}
	.s7 .title {
		padding: 0px 0px 36px !important;
	}
	.s7 .download-title {
		font-size: 1.4em;
	}
	.s7 .hero .human {
		overflow: hidden;
	}
	.s7 .hero .human img.placeholder {
		width: 100%;
		max-width: 100%;
		height: auto;
	}
	.s7 .cover-1-mobile {
		background: transparent url(../img/cover-1-mobile.png) center top/100% auto no-repeat;
	}
	.s7 .cover-2-mobile {
		background: transparent url(../img/cover-2-mobile.png) center top/100% auto no-repeat;
	}
	.s7 .cover-1-mobile {
		z-index: 10;
		margin-top: -50vw;
	}
	.s7 .next-cover {
		
	}
	
	.s8 .limit-width {
		max-width: none;
	}
	
	.download-item-wrap {
		max-width: 300px;
		width: 100%;
		margin: 0 auto;
	}
	.content-list {
		width: 100%;
	}
	.footer-menu ul li {
		display: block;
		text-align: center;
		padding: 1em 0;
	}
	.footer-menu ul li a {
		font-size: 14px;
	}
	.footer-menu ul li:not(:last-of-type) {
		border-bottom: 2px solid #FFC80B;
	}
	.footer-menu ul li:not(:last-of-type):after {
		display: none;
	}
	.section-download .download-item {
		margin-bottom: 1em;
	}
	.section-download.slick-dotted.slick-slider {
		margin-bottom: 4em;
	}
	
	/* Inner pages */
	.inner .inner-content .text {
		border-right: 0px !important;
		border-left: 0px !important;
	}
	.masthead {
		display: block;
		width: auto;
		margin: 0 auto;
		max-width: 600px;
	}
	.header-content {
		display: block;
		width: auto;
		max-width: none;
	}
	.inner-content {
		margin-top: 0px !important;
	}
	.inner-content .col-main {
		display: block;
		width: auto;
		margin-top: 0;
	}
	.header-content,
	.inner-content .dear,
	.inner-content .text {
		padding-left: 36px;
		padding-right: 36px;
	}
	.inner-content .text {
		border: 0px;
	}
	
	/* Chairman */
	.inner.chairman .header-content {
		max-width: none;
	}
	
	.inline-charts, .inline-quote {
		margin-bottom: 2em;
	}

	.inline-charts .page-chairman-chart-1,
	.inline-charts .page-chairman-chart-2,
	.inline-charts .page-chairman-chart-3 {
		width: 30%;
		margin: 0 1%;
		display: inline-block;
		vertical-align: middle;
	}
	
	.inline-quote .quote-box {
		padding: 1em 2em;
	}
	.header-content h1,
	.inner.ceo .header-content h1,
	.inner.financial .header-content h1,
	.inner.joint .header-content h1,
	.inner.sustain-framework .header-content h1,
	.inner.sustain-download .header-content h1,
	.inner.ar-download .header-content h1 {
		font-size: 36px;
	}	
	.inner.sustain-download {
		background-image: none;
	}
	.inner.ar-download {
		background-image: none;
	}
	.inner.joint .header-content h1 {
		margin-left: 0px;
		padding-left: 36px;
		padding-right: 36px;
	}
	.inner.joint blockquote {
		font-size: 16px;
	}
	.inner.glance .header-content h1 {
		font-size: 3em;
		text-align: left;
	}
	.inner-content .col-side {
		width: auto;
		display: block;
	}
	.side-table-wrap {
		
	}
	.header-content h1 {
		margin: 1em 0 0.5em;
	}
	.header-content .who {
		margin-bottom: 1em;
	}
	.inner.ceo .header-content {
		text-align: left;
	}
	.inner.ceo .header-content .position:before {
		left: auto;
		right: 100%;
	}
	.inner.ceo .inner-content {
		margin-top: 0px;
	}
	.inner.ceo .back-action {
		padding-left: 0;
	}
	.inner-header {
		padding-bottom: 2em;
	}
	.inner.glance {
		background-image: none;
	}
	.inner.glance .bg-splash {
		background-image: none;
	}
	.inner.glance .chart-main,
	.inner.glance .chart-sub {
		display: block;
		width: auto;
		margin-top: 4em;
	}
	.inner.glance .inner-header {
		margin-bottom: 0px;
		max-height: 80vw;
	}
	.inner.glance .masthead {
		width: auto;
		max-width: none;
	}
	.inner.glance .mobile-only .hero .human .splash-1 {
		background-position: right bottom;
		background-size: 90% auto;
		bottom: -15%;
	}
	.inner.glance .hero .human img:not(.placeholder) {
		width: 80%;
		margin-left: 20%;
	}
	.inner.glance .header-content {
		width: auto;
	}
	.inner.financial .masthead {
		width: auto;
		max-width: 400px;
		margin-left: 0px;
	}
	.inner.financial .header-content h1 br {
		display: none;
	}
	.inner.financial .header-content {
		width: auto;
	}
	.inner.joint .masthead {
		width: 100%;
		height: 70vw;
		float: none;
		max-width: none;
	}
	.joint-title {
		width: 100%;
	}
	.inner.joint .header-content {
		width: auto;
		padding-left: 0px;
		padding-right: 0px;
	}
	.inner.joint .inner-header {
		display: block;
	}
	.inner.financial .stickies,
	.financial-table {
		transform: none;
	}
	.side-quote {
		margin-bottom: 3em;
	}
	.side-quote .quote-box {
		padding-top: 1em;
		padding-bottom: 1em;
	}
	.inner.sustain-glance .masthead {
		display: none;
	}
	.inner.sustain-glance .header-content {
		width: auto;
		padding-left: 0px;
		padding-right: 0px;
	}
	.inner.sustain-glance .header-content h1 {
		font-size: 3em;
	}
	.inner.sustain-glance .mobile-masthead {
		display: inline-block;
		width: 30%;
		vertical-align: bottom;
	}
	.special-header-wrap {
		display: inline-block;
		vertical-align: bottom;
	}
	.chart-sustain-glance {
		transform: none;
	}
	.inner.sustain-framework {
		background-image: none;
		
	}
	.inner.sustain-framework .inner-header {
		background: #fff url(../img/page-sustain-framework-mobile.png) right top/50% auto no-repeat;
	}
	.vision-boxes .vision-box {
		display: block;
		width: auto;
		margin-bottom: 2em;
	}
	.inner-content .text.vision {
		padding-left: 24px;
		padding-right: 24px;
	}
	.vision-boxes .vision-box .icons img {
		margin: 0 1em;
	}
	.summary-charts .chart-row {
		padding-left: 24px;
		padding-right: 24px;
	}
	.summary-charts .chart-row .chart-single:not(.x2) {
		width: 50%;
		padding-bottom: 20px;
	}
	.sustain-summary .inner-content .col-main .note {
		padding-left: 24px;
		padding-right: 24px;
		box-sizing: border-box;
	}
	.summary-charts .chart-row .chart-single.x2 {
		width: 100%;
		box-sizing: border-box;
	}
	.summary-charts2 {
		padding-left: 24px;
		padding-right: 24px;
		box-sizing: border-box;
	}
	.inner.sustain-summary .header-content h1 {
		font-size: 2.4em;
	}
	.inner.sustain-summary .header-content h1 em {
		font-size: 1.1em;
	}
	.inner.sustain-download .masthead img.placeholder,
	.inner.ar-download .masthead img.placeholder {
		display: none;
	}
	.inner.sustain-download .hero,
	.inner.ar-download .hero {
		position: relative;
	}
	.inner.sustain-download .masthead {
		display: none;
	}
	.inner.ar-download .masthead {
		display: none;
	}
	body.sustain-download .download-row.sr-full .item-details {
		margin-top: 0;
	}
	.inner.ar-download .masthead {
		margin-bottom: -10vw;
	}
	.download-row .cover,
	body.download .download-row .cover {
		display: block;
		width: auto;
		max-width: 60%;
		margin: 0 auto 2em;
	}
	body.sustain-download .download-row .cover {
		max-width: none;
		margin-bottom: 0px;
	}
	.download-row {
		display: block !important;
		text-align: center !important;
	}
	body.sustain-download .download-row {
		margin-bottom: 2em;
	}
	.download-row .item-details .download-title,
	.download-row.alt .item-details .download-title {
		width: auto;
		margin-left: auto;
		margin-right: auto;
		text-align: center;
		font-size: 20px;
	}
	.download-row .cover,
	.download-row .item-details,
	.download-row.alt .item-details,
	body.download .download-row .item-details {
		width: auto;
		text-align: center;
		padding-left: 0;
		padding-right: 0;
	}
	body.sustain-download .download-row .item-details {
		padding-top: 0px;
		margin-top: -4em;
	}
	.download-row .item-details .sub-list {
		text-align: left;
	}
	.download-row .item-details .sub-list ul li {
		direction: ltr;
	}
	.download-row .item-details .sub-list {
		display: inline-block;
	}
	.ebook-row {
		display: block;
		width: auto;
		transform: none;
	}
	.ebook-row.ar, .ebook-row.sr {
		transform: none;
	}
	.ebook-row .cover,
	.ebook-row.alt .cover,
	.ebook-row .item-details,
	.ebook-row.alt .item-details {
		display: block;
		width: auto;
		transform: none;
		text-align: center;
	}
	.ebook-row .cover img {
		max-width: 480px;
		margin-left: auto;
		margin-right: auto;
	}
	.ebook-row .item-details {
		padding-top: 0px;
		margin-top: 0px;
	}
	.s7 .hero {
		top: auto;
	}
	.page-sustain-chart-mobile {
		padding-left: 24px;
		padding-right: 24px;	
	}
	.page-sustain-chart-mobile img {
		display: block;
		margin: 0 auto;
		max-width: 602px;
		width: 100%;
	}
	.inner.sustain-glance { 
		background-image: none;
	}
	.inner.financial { 
		background-image: none;
	}
}
@media screen and (orientation:portrait) and (max-width: 980px) {
	.stickies .sticky .sticky-wrap {
		width: 50%;
	}
}
@media screen and (orientation:portrait) and (max-width: 640px) {
	.floating-bar .menu-center {
		font-size: 14px;
	}
	.box .title, .section .title {
		font-size: 36px;
	}	
	.stickies .sticky .sticky-wrap {
		width: 70%;
		font-size: 5vw;
	}
	.download-item {
		display: block;
		width: 100%;
	}
	.s7 .hero .human img.placeholder {
		margin-bottom: 30vw;
	}
	.s7 .cover-1-mobile,
	.s7 .cover-2-mobile {
		background-size: 140% auto;
	}
	.download-item-wrap {
		max-width: 200px;
	}
	.header-content,
	.inner-content .dear,
	.inner-content .text,
	.inner.joint .header-content .dear {
		padding-left: 24px;
		padding-right: 24px;
	}
	.inner.joint .header-content h1 {
		padding-left: 24px;
		padding-right: 24px;
		font-size: 36px;
	}
	.header-content h1, .inner.ceo .header-content h1, .inner.financial .header-content h1, .inner.joint .header-content h1, .inner.sustain-framework .header-content h1, .inner.sustain-download .header-content h1, .inner.ar-download .header-content h1 {
		font-size: 36px;
	}
	.footer-menu ul li {
		padding: 0.5em 0;
	}
	
	.inner.glance .chart-main .chart-item,
	.inner.glance .chart-sub .chart-item {
		display: block;
		width: auto;	
	}
	.inner.glance .chart-main .chart-item {
		max-width: 400px;
		margin: 0 auto;
	}
	.inner.glance .chart-sub .chart-item {
		max-width: 320px;
		margin: 0 auto;
	}
	.summary-charts .chart-row {
		display: block;
	}
	.summary-charts .chart-row .chart-single:not(.x2) {
		width: auto;
	}
	.financial-table {
		display: block;
		margin-top: 3em;
		max-width: 400px;
	}
	.financial-table .fb {
		width: auto;
	}
	.chart-piramid .columns3 {
		display: block;
	}
	.chart-piramid .columns3 .col {
		width: auto;
		padding: 0.3em 0;
		border-top: 1px dashed #343434;
		border-left: 0px;
	}
	.chart-piramid .columns3 .col:first-of-type {
		border-top: 0px;
	}
	.fb.full .fact-box:after {
		display: none;
	}
	.summary-charts .chart-row .chart-single.x2 .table-content {
		display: block;
	}
	.summary-charts .chart-row .chart-single.x2 .table-content .col {
		width: auto;
	}
	.glance-box.brand .counter.sub {
	    font-size: 30px;
	    top: 61%;
	}
	.glance-box.turnover .counter {
		top: 36%;
	}
}

@media screen and (orientation:portrait) and (max-width: 560px) {
	.inline-charts .page-chairman-chart-1,
	.inline-charts .page-chairman-chart-2,
	.inline-charts .page-chairman-chart-3 {
		width: auto;
		margin: 0 auto;
		display: block;
		max-width: 315px;
	}
	
	.chart-piramid .pillars {
		display: block;
	}
	.chart-piramid .pillar {
		padding-bottom: 0px;
	}
	.chart-piramid .pillars.col2 .pillar,
	.chart-piramid .pillars .pillar {
		width: auto;
		border-top: 1px dashed #343434;
		border-left: 0px;
	}
	.chart-piramid .row.vision .heading {
		width: 50px;
		margin: 0 auto;
	}
	.inner.sustain-glance .header-content h1 em {
		font-size: 1.1em;
	}
	.special-header-wrap {
		width: 68%;
	}
	.inner.ceo .header-content h1 br {
		display: none;
	}
	.side-quote .quote-box {
		width: auto;
	}
}
@media screen and (orientation:portrait) and (max-width: 420px) {
	.inner.sustain-glance .header-content h1 {
		font-size: 9vw;
	}
	.header-content h1, .inner.ceo .header-content h1, .inner.financial .header-content h1, .inner.joint .header-content h1, .inner.sustain-framework .header-content h1, .inner.sustain-download .header-content h1, .inner.ar-download .header-content h1,
	.box .title, .section .title {
		font-size: 10vw;
	}
	.back-action a {
		font-size: 11px;
	}
	.inner-content .text h2 {
		font-size: 6vw;
	}
	.inner-content .text h3 {
		font-size: 5vw;
	}
	.inner-content {
		padding-left: 12px;
		padding-right: 12px;
	}
}