🔐 Sid Gifari File Manager Pro
v8.0.5 | 2026-06-16 09:11:53 | PHP 8.1.34
📂
/ (Root)
/
home
/
therahul
/
ramailobhela.com
/
css
📍 /home/therahul/ramailobhela.com/css
🔄 Refresh
✏️
Editing: styles.css
Writable
/* =================================================================== * Flare Main Stylesheet * Template Ver. 1.0.0 * 03-19-2020 * ------------------------------------------------------------------ * * TOC: * # settings and variables * ## fonts * ## colors * ## vertical spacing and typescale * ## grid variables * # normalize * # basic/base setup styles * ## media * ## typography resets * ## links * ## inputs * # Grid v3.0.0 * ## medium screen devices * ## tablets * ## mobile devices * ## small mobile devices <= 400px * # block grids * ## block grids - medium screen devices * ## block grids - tablets * ## block grids - mobile devices * ## block grids - small mobile devices <= 400px * # MISC * # custom grid, block grid STACK breakpoints * # base style overrides * ## links * # typography & general theme styles * ## lists * ## responsive video container * ## floated image * ## tables * ## spacing * # preloader * # forms * ## style placeholder text * ## change autocomplete styles in Chrome * # buttons * # additional components * ## additional typo styles * ## skillbars * ## alert box * # common and reusable styles * ## item list * ## slick slider * # site header * ## header logo * ## main navigation * ## mobile menu toggle * ## header contact button * # hero * ## hero content * ## hero video * ## hero scroll * ## animate intro content * ## animations * # about * ## about photo * ## about process * # services * # portfolio * ## portfolio list * # clients * ## clients slider * ## testimonials * # contact * # footer * ## footer block * ## footer list * ## copyright * ## go top * * ------------------------------------------------------------------ */ /* =================================================================== * # settings and variables * * ------------------------------------------------------------------- */ /* ------------------------------------------------------------------- * ## fonts * ------------------------------------------------------------------- */ @import url("https://fonts.googleapis.com/css?family=Montserrat:300,300i,400,400i,500,500i,600,600i,700,700i|Nunito+Sans:300,300i,400,400i,600,600i,700,700i&display=swap"); :root { --font-1: "Nunito Sans", sans-serif; --font-2: "Montserrat", sans-serif; /* monospace */ --font-mono: Consolas, "Andale Mono", Courier, "Courier New", monospace; } /* ------------------------------------------------------------------- * ## colors * ------------------------------------------------------------------- */ :root { /* color-1(#d9083c) * color-2(#eb5e55) * color-3(#f2d0a4) */ --color-1: hsla(345, 93%, 44%, 1); --color-2: hsla(4, 79%, 63%, 1); --color-3: hsla(34, 75%, 80%, 1); /* theme color variations */ --color-1-lighter: hsla(345, 93%, 64%, 1); --color-1-light : hsla(345, 93%, 54%, 1); --color-1-dark : hsla(345, 93%, 34%, 1); --color-1-darker : hsla(345, 93%, 24%, 1); --color-2-lighter: hsla(4, 79%, 83%, 1); --color-2-light : hsla(4, 79%, 73%, 1); --color-2-dark : hsla(4, 79%, 53%, 1); --color-2-darker : hsla(4, 79%, 43%, 1); /* feedback colors * color-error(#ffd1d2), color-success(#c8e675), * color-info(#d7ecfb), color-notice(#fff099) */ --color-error : hsla(359, 100%, 91%, 1); --color-success : hsla(76, 69%, 68%, 1); --color-info : hsla(205, 82%, 91%, 1); --color-notice : hsla(51, 100%, 80%, 1); --color-error-content : hsla(359, 50%, 50%, 1); --color-success-content: hsla(76, 29%, 28%, 1); --color-info-content : hsla(205, 32%, 31%, 1); --color-notice-content : hsla(51, 30%, 30%, 1); /* shades * generated using * Tint & Shade Generator * (https://maketintsandshades.com/) */ --color-black : #000000; --color-gray-19: #0b0b0c; --color-gray-18: #161719; --color-gray-17: #202225; --color-gray-16: #2b2e32; --color-gray-15: #363a3f; --color-gray-14: #41454b; --color-gray-13: #4c5158; --color-gray-12: #565c64; --color-gray-11: #616871; --color-gray-10: #6c737d; --color-gray-9 : #7b818a; --color-gray-8 : #898f97; --color-gray-7 : #989da4; --color-gray-6 : #a7abb1; --color-gray-5 : #b6b9be; --color-gray-4 : #c4c7cb; --color-gray-3 : #d3d5d8; --color-gray-2 : #e2e3e5; --color-gray-1 : #f0f1f2; --color-white : #ffffff; /* text */ --color-text : var(--color-gray-10); --color-text-dark : var(--color-white); --color-text-light : var(--color-gray-12); --color-placeholder: var(--color-gray-11); /* buttons */ --color-btn : var(--color-gray-15); --color-btn-text : var(--color-white); --color-btn-hover : var(--color-white); --color-btn-hover-text : var(--color-black); --color-btn-primary : var(--color-1); --color-btn-primary-text : var(--color-white); --color-btn-primary-hover : var(--color-white); --color-btn-primary-hover-text: var(--color-black); --color-btn-stroke : var(--color-white); --color-btn-stroke-text : var(--color-white); --color-btn-stroke-hover : var(--color-white); --color-btn-stroke-hover-text : var(--color-black); /* others */ --color-body : var(--color-1); --color-bg : #14171B; --color-border: var(--color-gray-17); } /* ------------------------------------------------------------------- * ## vertical spacing and typescale * ------------------------------------------------------------------- */ :root { /* spacing * base font size: 18px * vertical space unit : 32px */ --base-size : 62.5%; --base-font-size: 1.8rem; --space : 3.2rem; /* vertical spacing */ --vspace-0_25: calc(0.25 * var(--space)); --vspace-0_5 : calc(0.5 * var(--space)); --vspace-0_75: calc(0.75 * var(--space)); --vspace-1 : calc(var(--space)); --vspace-1_25: calc(1.25 * var(--space)); --vspace-1_5 : calc(1.5 * var(--space)); --vspace-1_75: calc(1.75 * var(--space)); --vspace-2 : calc(2 * var(--space)); --vspace-2_5 : calc(2.5 * var(--space)); --vspace-3 : calc(3 * var(--space)); --vspace-3_5 : calc(3.5 * var(--space)); --vspace-4 : calc(4 * var(--space)); /* type scale * ratio 1:2 | base: 18px * ------------------------------------------------------- * * --text-display-3 = (77.40px) * --text-display-2 = (64.50px) * --text-display-1 = (53.75px) * --text-xxxl = (44.79px) * --text-xxl = (37.32px) * --text-xl = (31.10px) * --text-lg = (25.92px) * --text-md = (21.60px) * --text-size = (18.00px) BASE * --text-sm = (15.00px) * --text-xs = (12.50px) * * ------------------------------------------------------- */ --text-scale-ratio: 1.2; --text-size : var(--base-font-size); --text-xs : calc((var(--text-size) / var(--text-scale-ratio)) / var(--text-scale-ratio)); --text-sm : calc(var(--text-xs) * var(--text-scale-ratio)); --text-md : calc(var(--text-sm) * var(--text-scale-ratio) * var(--text-scale-ratio)); --text-lg : calc(var(--text-md) * var(--text-scale-ratio)); --text-xl : calc(var(--text-lg) * var(--text-scale-ratio)); --text-xxl : calc(var(--text-xl) * var(--text-scale-ratio)); --text-xxxl : calc(var(--text-xxl) * var(--text-scale-ratio)); --text-display-1 : calc(var(--text-xxxl) * var(--text-scale-ratio)); --text-display-2 : calc(var(--text-display-1) * var(--text-scale-ratio)); --text-display-3 : calc(var(--text-display-2) * var(--text-scale-ratio)); /* default button height */ --vspace-btn: var(--vspace-2); } /* on mobile devices below 480px */ @media screen and (max-width: 480px) { :root { --base-font-size: 1.6rem; --space : 2.8rem; } } /* ------------------------------------------------------------------- * ## grid variables * ------------------------------------------------------------------- */ :root { /* widths for rows and containers */ --width-full : 100%; --width-max : 1200px; --width-wide : 1400px; --width-wider : 1600px; --width-widest : 1800px; --width-narrow : 1000px; --width-narrower: 900px; --width-grid-max: var(--width-max); /* gutters */ --gutter-lg : 2rem; --gutter-md : 1.6rem; --gutter-mob: 1rem; } /* ========================================================================== * # normalize * normalize.css v8.0.1 | MIT License | * github.com/necolas/normalize.css * * -------------------------------------------------------------------------- */ /* ------------------------------------------------------------------- * ## document * ------------------------------------------------------------------- */ /* 1. Correct the line height in all browsers. * 2. Prevent adjustments of font size after orientation changes in iOS.*/ html { line-height: 1.15; /* 1 */ -webkit-text-size-adjust: 100%; /* 2 */ } /* ------------------------------------------------------------------- * ## sections * ------------------------------------------------------------------- */ /* Remove the margin in all browsers. */ body { margin: 0; } /* Render the `main` element consistently in IE. */ main { display: block; } /* Correct the font size and margin on `h1` elements within `section` and * `article` contexts in Chrome, Firefox, and Safari. */ h1 { font-size: 2em; margin: 0.67em 0; } /* ------------------------------------------------------------------- * ## grouping * ------------------------------------------------------------------- */ /* 1. Add the correct box sizing in Firefox. * 2. Show the overflow in Edge and IE. */ hr { -webkit-box-sizing: content-box; box-sizing: content-box; /* 1 */ height: 0; /* 1 */ overflow: visible; /* 2 */ } /* 1. Correct the inheritance and scaling of font size in all browsers. * 2. Correct the odd `em` font sizing in all browsers. */ pre { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ } /* ------------------------------------------------------------------- * ## text-level semantics * ------------------------------------------------------------------- */ /* Remove the gray background on active links in IE 10. */ a { background-color: transparent; } /* 1. Remove the bottom border in Chrome 57- * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. */ abbr[title] { border-bottom: none; /* 1 */ text-decoration: underline; /* 2 */ -webkit-text-decoration: underline dotted; text-decoration: underline dotted; /* 2 */ } /* Add the correct font weight in Chrome, Edge, and Safari. */ b, strong { font-weight: bolder; } /* 1. Correct the inheritance and scaling of font size in all browsers. * 2. Correct the odd `em` font sizing in all browsers. */ code, kbd, samp { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ } /* Add the correct font size in all browsers. */ small { font-size: 80%; } /* Prevent `sub` and `sup` elements from affecting the line height in * all browsers. */ sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; } sub { bottom: -0.25em; } sup { top: -0.5em; } /* ------------------------------------------------------------------- * ## embedded content * ------------------------------------------------------------------- */ /* Remove the border on images inside links in IE 10. */ img { border-style: none; } /* ------------------------------------------------------------------- * ## forms * ------------------------------------------------------------------- */ /* 1. Change the font styles in all browsers. * 2. Remove the margin in Firefox and Safari. */ button, input, optgroup, select, textarea { font-family: inherit; /* 1 */ font-size: 100%; /* 1 */ line-height: 1.15; /* 1 */ margin: 0; /* 2 */ } /* Show the overflow in IE. * 1. Show the overflow in Edge. */ button, input { /* 1 */ overflow: visible; } /* Remove the inheritance of text transform in Edge, Firefox, and IE. * 1. Remove the inheritance of text transform in Firefox. */ button, select { /* 1 */ text-transform: none; } /* Correct the inability to style clickable types in iOS and Safari. */ button, [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; } /* Remove the inner border and padding in Firefox. */ button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0; } /* Restore the focus styles unset by the previous rule. */ button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring { outline: 1px dotted ButtonText; } /* Correct the padding in Firefox. */ fieldset { padding: 0.35em 0.75em 0.625em; } /* 1. Correct the text wrapping in Edge and IE. * 2. Correct the color inheritance from `fieldset` elements in IE. * 3. Remove the padding so developers are not caught out when they zero out * `fieldset` elements in all browsers. */ legend { -webkit-box-sizing: border-box; box-sizing: border-box; /* 1 */ color: inherit; /* 2 */ display: table; /* 1 */ max-width: 100%; /* 1 */ padding: 0; /* 3 */ white-space: normal; /* 1 */ } /* Add the correct vertical alignment in Chrome, Firefox, and Opera. */ progress { vertical-align: baseline; } /* Remove the default vertical scrollbar in IE 10+. */ textarea { overflow: auto; } /* 1. Add the correct box sizing in IE 10. * 2. Remove the padding in IE 10. */ [type="checkbox"], [type="radio"] { -webkit-box-sizing: border-box; box-sizing: border-box; /* 1 */ padding: 0; /* 2 */ } /* Correct the cursor style of increment and decrement buttons in Chrome. */ [type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; } /* 1. Correct the odd appearance in Chrome and Safari. * 2. Correct the outline style in Safari. */ [type="search"] { -webkit-appearance: textfield; /* 1 */ outline-offset: -2px; /* 2 */ } /* Remove the inner padding in Chrome and Safari on macOS. */ [type="search"]::-webkit-search-decoration { -webkit-appearance: none; } /* 1. Correct the inability to style clickable types in iOS and Safari. * 2. Change font properties to `inherit` in Safari. */ ::-webkit-file-upload-button { -webkit-appearance: button; /* 1 */ font: inherit; /* 2 */ } /* ------------------------------------------------------------------- * ## interactive * ------------------------------------------------------------------- */ /* Add the correct display in Edge, IE 10+, and Firefox. */ details { display: block; } /* Add the correct display in all browsers. */ summary { display: list-item; } /* ------------------------------------------------------------------- * ## misc * ------------------------------------------------------------------- */ /* Add the correct display in IE 10+. */ template { display: none; } /* Add the correct display in IE 10. */ [hidden] { display: none; } /* =================================================================== * # basic/base setup styles * * ------------------------------------------------------------------- */ html { font-size: 62.5%; -webkit-box-sizing: border-box; box-sizing: border-box; } *, *::before, *::after { -webkit-box-sizing: inherit; box-sizing: inherit; } body { font-weight: normal; line-height: 1; word-wrap: break-word; -moz-font-smoothing: grayscale; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; -webkit-overflow-scrolling: touch; -webkit-text-size-adjust: none; } /* ------------------------------------------------------------------- * ## media * ------------------------------------------------------------------- */ svg, img, video embed, iframe, object { max-width: 100%; height: auto; } /* ------------------------------------------------------------------- * ## typography resets * ------------------------------------------------------------------- */ div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, p, blockquote, th, td { margin: 0; padding: 0; } p { font-size: inherit; text-rendering: optimizeLegibility; } em, i { font-style: italic; line-height: inherit; } strong, b { font-weight: bold; line-height: inherit; } small { font-size: 60%; line-height: inherit; } ol, ul { list-style: none; } li { display: block; } /* ------------------------------------------------------------------- * ## links * ------------------------------------------------------------------- */ a { text-decoration: none; line-height: inherit; } a img { border: none; } /* ------------------------------------------------------------------- * ## inputs * ------------------------------------------------------------------- */ fieldset { margin: 0; padding: 0; } input[type="email"], input[type="number"], input[type="search"], input[type="text"], input[type="tel"], input[type="url"], input[type="password"], textarea { -webkit-appearance: none; -moz-appearance: none; appearance: none; } /* =================================================================== * # Grid v3.0.0 * * ----------------------------------------------------------------- * - Grid breakpoints are based on MAXIMUM WIDTH media queries, * meaning they apply to that one breakpoint and ALL THOSE BELOW IT. * - Grid columns without a specified width will automatically layout * as equal width columns. * ------------------------------------------------------------------- */ /* rows * ------------------------------------- */ .row { width: 92%; max-width: var(--width-grid-max); margin: 0 auto; display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-flow: row wrap; -webkit-box-orient: horizontal; -webkit-box-direction: normal; flex-flow: row wrap; } .row .row { width: auto; max-width: none; margin-left: calc(var(--gutter-lg) * -1); margin-right: calc(var(--gutter-lg) * -1); } /* columns * -------------------------------------- */ .column { -ms-flex: 1 1 0%; -webkit-box-flex: 1; flex: 1 1 0%; padding: 0 var(--gutter-lg); } .collapse>.column, .column.collapse { padding: 0; } /* flex row containers utility classes */ .row.row-wrap { -ms-flex-wrap: wrap; flex-wrap: wrap; } .row.row-nowrap { -ms-flex-wrap: none; flex-wrap: nowrap; } .row.row-y-top { -ms-flex-align: start; -webkit-box-align: start; align-items: flex-start; } .row.row-y-bottom { -ms-flex-align: end; -webkit-box-align: end; align-items: flex-end; } .row.row-y-center { -ms-flex-align: center; -webkit-box-align: center; align-items: center; } .row.row-stretch { -ms-flex-align: stretch; -webkit-box-align: stretch; align-items: stretch; } .row.row-baseline { -ms-flex-align: baseline; -webkit-box-align: baseline; align-items: baseline; } .row.row-x-left { -ms-flex-pack: start; -webkit-box-pack: start; justify-content: flex-start; } .row.row-x-right { -ms-flex-pack: end; -webkit-box-pack: end; justify-content: flex-end; } .row.row-x-center { -ms-flex-pack: center; -webkit-box-pack: center; justify-content: center; } /* flex item utility alignment classes */ .align-center { margin: auto; -webkit-align-self: center; -ms-flex-item-align: center; -ms-grid-row-align: center; align-self: center; } .align-left { margin-right: auto; -webkit-align-self: center; -ms-flex-item-align: center; -ms-grid-row-align: center; align-self: center; } .align-right { margin-left: auto; -webkit-align-self: center; -ms-flex-item-align: center; -ms-grid-row-align: center; align-self: center; } .align-x-center { margin-right: auto; margin-left: auto; } .align-x-left { margin-right: auto; } .align-x-right { margin-left: auto; } .align-y-center { -webkit-align-self: center; -ms-flex-item-align: center; -ms-grid-row-align: center; align-self: center; } .align-y-top { -webkit-align-self: flex-start; -ms-flex-item-align: start; align-self: flex-start; } .align-y-bottom { -webkit-align-self: flex-end; -ms-flex-item-align: end; align-self: flex-end; } /* large screen column widths */ .large-1 { -ms-flex: 0 0 8.33333%; -webkit-box-flex: 0; flex: 0 0 8.33333%; max-width: 8.33333%; } .large-2 { -ms-flex: 0 0 16.66667%; -webkit-box-flex: 0; flex: 0 0 16.66667%; max-width: 16.66667%; } .large-3 { -ms-flex: 0 0 25%; -webkit-box-flex: 0; flex: 0 0 25%; max-width: 25%; } .large-4 { -ms-flex: 0 0 33.33333%; -webkit-box-flex: 0; flex: 0 0 33.33333%; max-width: 33.33333%; } .large-5 { -ms-flex: 0 0 41.66667%; -webkit-box-flex: 0; flex: 0 0 41.66667%; max-width: 41.66667%; } .large-6 { -ms-flex: 0 0 50%; -webkit-box-flex: 0; flex: 0 0 50%; max-width: 50%; } .large-7 { -ms-flex: 0 0 58.33333%; -webkit-box-flex: 0; flex: 0 0 58.33333%; max-width: 58.33333%; } .large-8 { -ms-flex: 0 0 66.66667%; -webkit-box-flex: 0; flex: 0 0 66.66667%; max-width: 66.66667%; } .large-9 { -ms-flex: 0 0 75%; -webkit-box-flex: 0; flex: 0 0 75%; max-width: 75%; } .large-10 { -ms-flex: 0 0 83.33333%; -webkit-box-flex: 0; flex: 0 0 83.33333%; max-width: 83.33333%; } .large-11 { -ms-flex: 0 0 91.66667%; -webkit-box-flex: 0; flex: 0 0 91.66667%; max-width: 91.66667%; } .large-12 { -ms-flex: 0 0 100%; -webkit-box-flex: 0; flex: 0 0 100%; max-width: 100%; } /* ------------------------------------------------------------------- * ## medium screen devices * ------------------------------------------------------------------- */ @media screen and (max-width: 1200px) { .row .row { margin-left: calc(var(--gutter-md) * -1); margin-right: calc(var(--gutter-md) * -1); } .column { padding: 0 var(--gutter-md); } .medium-1 { -ms-flex: 0 0 8.33333%; -webkit-box-flex: 0; flex: 0 0 8.33333%; max-width: 8.33333%; } .medium-2 { -ms-flex: 0 0 16.66667%; -webkit-box-flex: 0; flex: 0 0 16.66667%; max-width: 16.66667%; } .medium-3 { -ms-flex: 0 0 25%; -webkit-box-flex: 0; flex: 0 0 25%; max-width: 25%; } .medium-4 { -ms-flex: 0 0 33.33333%; -webkit-box-flex: 0; flex: 0 0 33.33333%; max-width: 33.33333%; } .medium-5 { -ms-flex: 0 0 41.66667%; -webkit-box-flex: 0; flex: 0 0 41.66667%; max-width: 41.66667%; } .medium-6 { -ms-flex: 0 0 50%; -webkit-box-flex: 0; flex: 0 0 50%; max-width: 50%; } .medium-7 { -ms-flex: 0 0 58.33333%; -webkit-box-flex: 0; flex: 0 0 58.33333%; max-width: 58.33333%; } .medium-8 { -ms-flex: 0 0 66.66667%; -webkit-box-flex: 0; flex: 0 0 66.66667%; max-width: 66.66667%; } .medium-9 { -ms-flex: 0 0 75%; -webkit-box-flex: 0; flex: 0 0 75%; max-width: 75%; } .medium-10 { -ms-flex: 0 0 83.33333%; -webkit-box-flex: 0; flex: 0 0 83.33333%; max-width: 83.33333%; } .medium-11 { -ms-flex: 0 0 91.66667%; -webkit-box-flex: 0; flex: 0 0 91.66667%; max-width: 91.66667%; } .medium-12 { -ms-flex: 0 0 100%; -webkit-box-flex: 0; flex: 0 0 100%; max-width: 100%; } } /* ------------------------------------------------------------------- * ## tablets * ------------------------------------------------------------------- */ @media screen and (max-width: 800px) { .row { width: 90%; } .tab-1 { -ms-flex: 0 0 8.33333%; -webkit-box-flex: 0; flex: 0 0 8.33333%; max-width: 8.33333%; } .tab-2 { -ms-flex: 0 0 16.66667%; -webkit-box-flex: 0; flex: 0 0 16.66667%; max-width: 16.66667%; } .tab-3 { -ms-flex: 0 0 25%; -webkit-box-flex: 0; flex: 0 0 25%; max-width: 25%; } .tab-4 { -ms-flex: 0 0 33.33333%; -webkit-box-flex: 0; flex: 0 0 33.33333%; max-width: 33.33333%; } .tab-5 { -ms-flex: 0 0 41.66667%; -webkit-box-flex: 0; flex: 0 0 41.66667%; max-width: 41.66667%; } .tab-6 { -ms-flex: 0 0 50%; -webkit-box-flex: 0; flex: 0 0 50%; max-width: 50%; } .tab-7 { -ms-flex: 0 0 58.33333%; -webkit-box-flex: 0; flex: 0 0 58.33333%; max-width: 58.33333%; } .tab-8 { -ms-flex: 0 0 66.66667%; -webkit-box-flex: 0; flex: 0 0 66.66667%; max-width: 66.66667%; } .tab-9 { -ms-flex: 0 0 75%; -webkit-box-flex: 0; flex: 0 0 75%; max-width: 75%; } .tab-10 { -ms-flex: 0 0 83.33333%; -webkit-box-flex: 0; flex: 0 0 83.33333%; max-width: 83.33333%; } .tab-11 { -ms-flex: 0 0 91.66667%; -webkit-box-flex: 0; flex: 0 0 91.66667%; max-width: 91.66667%; } .tab-12 { -ms-flex: 0 0 100%; -webkit-box-flex: 0; flex: 0 0 100%; max-width: 100%; } .hide-on-tablet { display: none; } } /* ------------------------------------------------------------------- * ## mobile devices * ------------------------------------------------------------------- */ @media screen and (max-width: 600px) { .row { width: 100%; padding-left: 6vw; padding-right: 6vw; } .row .row { margin-left: calc(var(--gutter-mob) * -1); margin-right: calc(var(--gutter-mob) * -1); padding-left: 0; padding-right: 0; } .column { padding: 0 var(--gutter-mob); } .mob-1 { -ms-flex: 0 0 8.33333%; -webkit-box-flex: 0; flex: 0 0 8.33333%; max-width: 8.33333%; } .mob-2 { -ms-flex: 0 0 16.66667%; -webkit-box-flex: 0; flex: 0 0 16.66667%; max-width: 16.66667%; } .mob-3 { -ms-flex: 0 0 25%; -webkit-box-flex: 0; flex: 0 0 25%; max-width: 25%; } .mob-4 { -ms-flex: 0 0 33.33333%; -webkit-box-flex: 0; flex: 0 0 33.33333%; max-width: 33.33333%; } .mob-5 { -ms-flex: 0 0 41.66667%; -webkit-box-flex: 0; flex: 0 0 41.66667%; max-width: 41.66667%; } .mob-6 { -ms-flex: 0 0 50%; -webkit-box-flex: 0; flex: 0 0 50%; max-width: 50%; } .mob-7 { -ms-flex: 0 0 58.33333%; -webkit-box-flex: 0; flex: 0 0 58.33333%; max-width: 58.33333%; } .mob-8 { -ms-flex: 0 0 66.66667%; -webkit-box-flex: 0; flex: 0 0 66.66667%; max-width: 66.66667%; } .mob-9 { -ms-flex: 0 0 75%; -webkit-box-flex: 0; flex: 0 0 75%; max-width: 75%; } .mob-10 { -ms-flex: 0 0 83.33333%; -webkit-box-flex: 0; flex: 0 0 83.33333%; max-width: 83.33333%; } .mob-11 { -ms-flex: 0 0 91.66667%; -webkit-box-flex: 0; flex: 0 0 91.66667%; max-width: 91.66667%; } .mob-12 { -ms-flex: 0 0 100%; -webkit-box-flex: 0; flex: 0 0 100%; max-width: 100%; } .hide-on-mobile { display: none; } } /* ------------------------------------------------------------------- * ## small mobile devices <= 400px * ------------------------------------------------------------------- */ @media screen and (max-width: 400px) { .row .row { margin-left: 0; margin-right: 0; } .column { -ms-flex: 0 0 100%; -webkit-box-flex: 0; flex: 0 0 100%; max-width: 100%; margin-left: 0; margin-right: 0; padding: 0; } } /* =================================================================== * # block grids * * ------------------------------------------------------------------- * Equally-sized columns define at parent/row level. * ------------------------------------------------------------------- */ .block-large-1-8>.column { -ms-flex: 0 0 12.5%; -webkit-box-flex: 0; flex: 0 0 12.5%; max-width: 12.5%; } .block-large-1-6>.column { -ms-flex: 0 0 16.66667%; -webkit-box-flex: 0; flex: 0 0 16.66667%; max-width: 16.66667%; } .block-large-1-5>.column { -ms-flex: 0 0 20%; -webkit-box-flex: 0; flex: 0 0 20%; max-width: 20%; } .block-large-1-4>.column { -ms-flex: 0 0 25%; -webkit-box-flex: 0; flex: 0 0 25%; max-width: 25%; } .block-large-1-3>.column { -ms-flex: 0 0 33.33333%; -webkit-box-flex: 0; flex: 0 0 33.33333%; max-width: 33.33333%; } .block-large-1-2>.column { -ms-flex: 0 0 50%; -webkit-box-flex: 0; flex: 0 0 50%; max-width: 50%; } .block-large-full>.column { -ms-flex: 0 0 100%; -webkit-box-flex: 0; flex: 0 0 100%; max-width: 100%; } /* ------------------------------------------------------------------- * ## block grids - medium screen devices * ------------------------------------------------------------------- */ @media screen and (max-width: 1200px) { .block-medium-1-8>.column { -ms-flex: 0 0 12.5%; -webkit-box-flex: 0; flex: 0 0 12.5%; max-width: 12.5%; } .block-medium-1-6>.column { -ms-flex: 0 0 16.66667%; -webkit-box-flex: 0; flex: 0 0 16.66667%; max-width: 16.66667%; } .block-medium-1-5>.column { -ms-flex: 0 0 20%; -webkit-box-flex: 0; flex: 0 0 20%; max-width: 20%; } .block-medium-1-4>.column { -ms-flex: 0 0 25%; -webkit-box-flex: 0; flex: 0 0 25%; max-width: 25%; } .block-medium-1-3>.column { -ms-flex: 0 0 33.33333%; -webkit-box-flex: 0; flex: 0 0 33.33333%; max-width: 33.33333%; } .block-medium-1-2>.column { -ms-flex: 0 0 50%; -webkit-box-flex: 0; flex: 0 0 50%; max-width: 50%; } .block-medium-full>.column { -ms-flex: 0 0 100%; -webkit-box-flex: 0; flex: 0 0 100%; max-width: 100%; } } /* ------------------------------------------------------------------- * ## block grids - tablets * ------------------------------------------------------------------- */ @media screen and (max-width: 800px) { .block-tab-1-8>.column { -ms-flex: 0 0 12.5%; -webkit-box-flex: 0; flex: 0 0 12.5%; max-width: 12.5%; } .block-tab-1-6>.column { -ms-flex: 0 0 16.66667%; -webkit-box-flex: 0; flex: 0 0 16.66667%; max-width: 16.66667%; } .block-tab-1-5>.column { -ms-flex: 0 0 20%; -webkit-box-flex: 0; flex: 0 0 20%; max-width: 20%; } .block-tab-1-4>.column { -ms-flex: 0 0 25%; -webkit-box-flex: 0; flex: 0 0 25%; max-width: 25%; } .block-tab-1-3>.column { -ms-flex: 0 0 33.33333%; -webkit-box-flex: 0; flex: 0 0 33.33333%; max-width: 33.33333%; } .block-tab-1-2>.column { -ms-flex: 0 0 50%; -webkit-box-flex: 0; flex: 0 0 50%; max-width: 50%; } .block-tab-full>.column { -ms-flex: 0 0 100%; -webkit-box-flex: 0; flex: 0 0 100%; max-width: 100%; } } /* ------------------------------------------------------------------- * ## block grids - mobile devices * ------------------------------------------------------------------- */ @media screen and (max-width: 600px) { .block-mob-1-8>.column { -ms-flex: 0 0 12.5%; -webkit-box-flex: 0; flex: 0 0 12.5%; max-width: 12.5%; } .block-mob-1-6>.column { -ms-flex: 0 0 16.66667%; -webkit-box-flex: 0; flex: 0 0 16.66667%; max-width: 16.66667%; } .block-mob-1-5>.column { -ms-flex: 0 0 20%; -webkit-box-flex: 0; flex: 0 0 20%; max-width: 20%; } .block-mob-1-4>.column { -ms-flex: 0 0 25%; -webkit-box-flex: 0; flex: 0 0 25%; max-width: 25%; } .block-mob-1-3>.column { -ms-flex: 0 0 33.33333%; -webkit-box-flex: 0; flex: 0 0 33.33333%; max-width: 33.33333%; } .block-mob-1-2>.column { -ms-flex: 0 0 50%; -webkit-box-flex: 0; flex: 0 0 50%; max-width: 50%; } .block-mob-full>.column { -ms-flex: 0 0 100%; -webkit-box-flex: 0; flex: 0 0 100%; max-width: 100%; } } /* ------------------------------------------------------------------- * ## block grids - small mobile devices <= 400px * ------------------------------------------------------------------- */ @media screen and (max-width: 400px) { .stack>.column { -ms-flex: 0 0 100%; -webkit-box-flex: 0; flex: 0 0 100%; max-width: 100%; margin-left: 0; margin-right: 0; padding: 0; } } /* =================================================================== * # MISC * * ------------------------------------------------------------------- */ .h-group:after { content: ""; display: table; clear: both; } /* misc helper classes */ .is-hidden { display: none; } .is-invisible { visibility: hidden; } .h-antialiased { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } .h-overflow-hidden { overflow: hidden; } .h-remove-top { margin-top: 0; } .h-remove-bottom { margin-bottom: 0; } .h-add-half-bottom { margin-bottom: var(--vspace-0_5) !important; } .h-add-bottom { margin-bottom: var(--vspace-1) !important; } .h-no-border { border: none; } .h-full-width { width: 100%; } .h-text-center { text-align: center; } .h-text-left { text-align: left; } .h-text-right { text-align: right; } .h-pull-left { float: left; } .h-pull-right { float: right; } /* =================================================================== * # custom grid, block grid STACK breakpoints * * ------------------------------------------------------------------- */ @media screen and (max-width: 1000px) { .block-1000-stack>.column { -ms-flex: 0 0 100%; -webkit-box-flex: 0; flex: 0 0 100%; max-width: 100%; } } @media screen and (max-width: 900px) { .w-900-stack, .block-900-stack>.column { -ms-flex: 0 0 100%; -webkit-box-flex: 0; flex: 0 0 100%; max-width: 100%; } } /* =================================================================== * # base style overrides * * ------------------------------------------------------------------- */ html { font-size: var(--base-size); } html, body { height: 100%; } body { background: var(--color-body); font-family: var(--font-1); font-size: var(--text-size); font-style: normal; font-weight: normal; line-height: var(--vspace-1); color: var(--color-text); margin: 0; padding: 0; } /* ------------------------------------------------------------------- * ## links * ------------------------------------------------------------------- */ a { color: var(--color-1-light); -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out; } a:hover, a:focus, a:active { color: white; } a:hover, a:active { outline: 0; } /* =================================================================== * # typography & general theme styles * * ------------------------------------------------------------------- */ /* type scale - ratio 1:2 | base: 18px * ------------------------------------------------------------------- --text-display-3 = (77.40px) --text-display-2 = (64.50px) --text-display-1 = (53.75px) --text-xxxl = (44.79px) --text-xxl = (37.32px) --text-xl = (31.10px) --text-lg = (25.92px) --text-md = (21.60px) --text-size = (18.00px) BASE --text-sm = (15.00px) --text-xs = (12.50px) * -------------------------------------------------------------------- */ h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { font-family: var(--font-2); font-weight: 500; font-style: normal; color: var(--color-text-dark); -webkit-font-variant-ligatures: common-ligatures; font-variant-ligatures: common-ligatures; text-rendering: optimizeLegibility; } h1, .h1 { margin-top: var(--vspace-2_5); margin-bottom: var(--vspace-0_75); } h2, .h2, h3, .h3, h4, .h4 { margin-top: var(--vspace-2); margin-bottom: var(--vspace-0_5); } h5, .h5, h6, .h6 { margin-top: var(--vspace-1_5); margin-bottom: var(--vspace-0_5); } h1, .h1 { font-size: var(--text-display-1); line-height: var(--vspace-2); letter-spacing: -.015em; } @media screen and (max-width: 400px) { h1, .h1 { font-size: var(--text-xxxl); line-height: var(--vspace-1_75); } } h2, .h2 { font-size: var(--text-xxl); line-height: var(--vspace-1_5); } h3, .h3 { font-size: var(--text-xl); line-height: var(--vspace-1_25); } h4, .h4 { font-size: var(--text-lg); line-height: var(--vspace-1); } h5, .h5 { font-size: var(--text-md); line-height: calc(0.875 * var(--space)); } h6, .h6 { font-size: var(--text-sm); font-weight: 600; line-height: var(--vspace-0_75); text-transform: uppercase; letter-spacing: .22em; } .lead, .attention-getter { font-family: var(--font-1); font-weight: 400; font-size: var(--text-md); line-height: calc(1.125 * var(--space)); } @media screen and (max-width: 400px) { .lead, .attention-getter { font-size: 1.9rem; } } figure img, p img { margin: 0; vertical-align: bottom; } em, i, strong, b { font-size: inherit; line-height: inherit; } em, i { font-family: var(--font-1); font-style: italic; } strong, b { font-family: var(--font-1); font-weight: 600; } small { font-size: 1.3rem; font-weight: 500; line-height: calc(0.5 * var(--space)); } blockquote { margin: 0 0 var(--vspace-1) 0; padding: var(--vspace-1) var(--vspace-1_5); border-left: 4px solid var(--color-text-light); position: relative; } @media screen and (max-width: 400px) { blockquote { padding: var(--vspace-0_75) var(--vspace-0_75); } } blockquote p { font-family: var(--font-1); font-weight: 400; font-size: var(--text-md); font-style: normal; line-height: calc(1.125 * var(--space)); color: var(--color-text-dark); padding: 0; } blockquote cite { display: block; font-family: var(--font-1); font-weight: 400; font-size: var(--text-sm); line-height: var(--vspace-0_75); font-style: normal; } blockquote cite:before { content: "\2014 \0020"; } blockquote cite, blockquote cite a, blockquote cite a:visited { color: var(--color-text); border: none; } figure { display: block; margin-left: 0; margin-right: 0; } figure img+figcaption { margin-top: var(--vspace-1); } figcaption { font-size: var(--text-sm); text-align: center; margin-bottom: 0; } var, kbd, samp, code, pre { font-family: var(--font-mono); } pre { padding: var(--vspace-0_75) var(--vspace-1) var(--vspace-1); background: var(--color-gray-18); overflow-x: auto; } code { font-size: var(--text-sm); line-height: 1.6rem; margin: 0 .2rem; padding: calc(((var(--vspace-1) - 1.6rem) / 2) - .1rem) calc(.8rem - .1rem); white-space: nowrap; background: var(--color-gray-18); border: 1px solid var(--color-gray-17); color: var(--color-text-dark); border-radius: 3px; } pre>code { display: block; white-space: pre; line-height: var(--vspace-1); padding: 0; margin: 0; border: none; } .prettyprint code { background: var(--color-gray-2); } pre.prettyprint>code { border: none; } del { text-decoration: line-through; } abbr { font-family: var(--font-1); font-weight: 600; font-variant: small-caps; text-transform: lowercase; letter-spacing: .1em; } abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; text-decoration: none; } mark { background: var(--color-3); color: black; } hr { border: solid var(--color-border); border-width: .1rem 0 0; clear: both; margin: var(--vspace-2) 0 calc(var(--vspace-2) - .1rem); height: 0; } hr.fancy { border: none; margin: var(--vspace-2) 0; height: var(--vspace-1); text-align: center; } hr.fancy::before { content: "*****"; letter-spacing: .3em; } /* ------------------------------------------------------------------- * ## lists * ------------------------------------------------------------------- */ ol { list-style: decimal; } ul { list-style: disc; } li { display: list-item; } ol, ul { margin-left: 1.6rem; } ul li { padding-left: .4rem; } ul ul, ul ol, ol ol, ol ul { margin: var(--vspace-0_5) 0 var(--vspace-0_5) var(--vspace-0_5); } ul.disc li { display: list-item; list-style: none; padding: 0 0 0 .8rem; position: relative; } ul.disc li::before { content: ""; display: inline-block; width: var(--vspace-0_25); height: var(--vspace-0_25); border-radius: 50%; background: var(--color-1-dark); position: absolute; left: -.9em; top: .65em; vertical-align: middle; } dt { margin: 0; color: var(--color-1); } dd { margin: 0 0 0 2rem; } /* ------------------------------------------------------------------- * ## responsive video container * ------------------------------------------------------------------- */ .video-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; } .video-container iframe, .video-container object, .video-container embed, .video-container video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } /* ------------------------------------------------------------------- * ## floated image * ------------------------------------------------------------------- */ img.h-pull-right { margin: var(--vspace-0_5) 0 var(--vspace-0_5) 2.8rem; } img.h-pull-left { margin: var(--vspace-0_5) 2.8rem var(--vspace-0_5) 0; } /* ------------------------------------------------------------------- * ## tables * ------------------------------------------------------------------- */ table { border-width: 0; width: 100%; max-width: 100%; font-family: var(--font-1); border-collapse: collapse; } th, td { padding: var(--vspace-0_5) 3.2rem calc(var(--vspace-0_5) - .1rem); text-align: left; border-bottom: 1px solid var(--color-border); } th { padding: var(--vspace-0_5) 3.2rem; color: var(--color-text-dark); font-family: var(--font-2); font-weight: 600; } th:first-child, td:first-child { padding-left: 0; } th:last-child, td:last-child { padding-right: 0; } .table-responsive { overflow-x: auto; -webkit-overflow-scrolling: touch; } /* ------------------------------------------------------------------- * ## spacing * ------------------------------------------------------------------- */ img, p, pre, table, blockquote, figure, figcaption, ul, ol, dl, form, fieldset, input, textarea, select, button, .btn, .video-container, .ss-custom-select { margin-bottom: var(--vspace-1); } /* =================================================================== * # preloader * * ------------------------------------------------------------------- */ #preloader { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: var(--color-bg); z-index: 500; height: 100vh; width: 100%; overflow: hidden; } .no-js #preloader, .oldie #preloader { display: none; } #loader { position: absolute; left: 50%; top: 50%; width: 6px; height: 6px; padding: 0; display: inline-block; -webkit-transform: translate3d(-50%, -50%, 0); transform: translate3d(-50%, -50%, 0); } #loader>div { content: ""; background: white; width: 6px; height: 6px; position: absolute; top: 0; left: 0; border-radius: 50%; } #loader>div:nth-of-type(1) { left: 15px; } #loader>div:nth-of-type(3) { left: -15px; } /* dots jump */ .dots-jump>div { -webkit-animation: dots-jump 1.2s infinite ease; animation: dots-jump 1.2s infinite ease; -webkit-animation-delay: 0.2s; animation-delay: 0.2s; } .dots-jump>div:nth-of-type(1) { -webkit-animation-delay: 0.4s; animation-delay: 0.4s; } .dots-jump>div:nth-of-type(3) { -webkit-animation-delay: 0s; animation-delay: 0s; } @-webkit-keyframes dots-jump { 0% { top: 0; } 40% { top: -6px; } 80% { top: 0; } } @keyframes dots-jump { 0% { top: 0; } 40% { top: -6px; } 80% { top: 0; } } /* dots fade */ .dots-fade>div { -webkit-animation: dots-fade 1.6s infinite ease; animation: dots-fade 1.6s infinite ease; -webkit-animation-delay: 0.4s; animation-delay: 0.4s; } .dots-fade>div:nth-of-type(1) { -webkit-animation-delay: 0.8s; animation-delay: 0.8s; } .dots-fade>div:nth-of-type(3) { -webkit-animation-delay: 0s; animation-delay: 0s; } @-webkit-keyframes dots-fade { 0% { opacity: 1; } 40% { opacity: 0.2; } 80% { opacity: 1; } } @keyframes dots-fade { 0% { opacity: 1; } 40% { opacity: 0.2; } 80% { opacity: 1; } } /* dots pulse */ .dots-pulse>div { -webkit-animation: dots-pulse 1.2s infinite ease; animation: dots-pulse 1.2s infinite ease; -webkit-animation-delay: 0.2s; animation-delay: 0.2s; } .dots-pulse>div:nth-of-type(1) { -webkit-animation-delay: 0.4s; animation-delay: 0.4s; } .dots-pulse>div:nth-of-type(3) { -webkit-animation-delay: 0s; animation-delay: 0s; } @-webkit-keyframes dots-pulse { 0% { -webkit-transform: scale(1); transform: scale(1); } 40% { -webkit-transform: scale(1.1); transform: scale(1.3); } 80% { -webkit-transform: scale(1); transform: scale(1); } } @keyframes dots-pulse { 0% { -webkit-transform: scale(1); transform: scale(1); } 40% { -webkit-transform: scale(1.1); transform: scale(1.3); } 80% { -webkit-transform: scale(1); transform: scale(1); } } /* =================================================================== * # forms * * ------------------------------------------------------------------- */ fieldset { border: none; margin-bottom: var(--vspace-0_5); } input[type="email"], input[type="number"], input[type="search"], input[type="text"], input[type="tel"], input[type="url"], input[type="password"], textarea, select { --input-height: var(--vspace-2); --input-line-height: var(--vspace-1); --input-vpadding: calc(((var(--input-height) - var(--input-line-height)) / 2) - .1rem); display: block; height: var(--input-height); padding: var(--input-vpadding) calc(2.4rem - .1rem); border: 0; outline: none; color: var(--color-placeholder); font-family: var(--font-1); font-size: var(--text-sm); line-height: var(--input-line-height); max-width: 100%; background-color: var(--color-gray-17); border: .1rem solid transparent; -webkit-transition: all .3s ease-in-out; transition: all .3s ease-in-out; border-radius: 4px; } .ss-custom-select { position: relative; padding: 0; } .ss-custom-select select { -webkit-appearance: none; -moz-appearance: none; appearance: none; text-indent: 0.01px; text-overflow: ''; margin: 0; vertical-align: middle; } .ss-custom-select select option { padding-left: 2rem; padding-right: 2rem; } .ss-custom-select select::-ms-expand { display: none; } .ss-custom-select::after { border-bottom: 2px solid var(--color-white); border-right: 2px solid var(--color-white); content: ''; display: block; height: 8px; width: 8px; margin-top: -7px; pointer-events: none; position: absolute; right: 2.4rem; top: 50%; -webkit-transition: all 0.15s ease-in-out; transition: all 0.15s ease-in-out; -webkit-transform-origin: 66% 66%; transform-origin: 66% 66%; -webkit-transform: rotate(45deg); transform: rotate(45deg); } textarea { min-height: calc(8 * var(--space)); } input[type="email"]:focus, input[type="number"]:focus, input[type="search"]:focus, input[type="text"]:focus, input[type="tel"]:focus, input[type="url"]:focus, input[type="password"]:focus, textarea:focus, select:focus { color: white; -webkit-box-shadow: 0 0 8px var(--color-gray-15); box-shadow: 0 0 8px var(--color-gray-15); border: 1px solid var(--color-gray-15); } label, legend { font-family: var(--font-1); font-weight: 600; font-size: var(--text-sm); line-height: var(--vspace-0_5); margin-bottom: var(--vspace-0_5); color: var(--color-text-dark); display: block; } input[type="checkbox"], input[type="radio"] { display: inline; } label>.label-text { display: inline-block; margin-left: 1rem; font-family: var(--font-1); line-height: inherit; } label>input[type="checkbox"], label>input[type="radio"] { margin: 0; position: relative; top: .2rem; } /* ------------------------------------------------------------------- * ## style placeholder text * ------------------------------------------------------------------- */ ::-webkit-input-placeholder { /* WebKit, Blink, Edge */ color: var(--color-placeholder); } :-ms-input-placeholder { /* Internet Explorer 10-11 */ color: var(--color-placeholder); } ::-ms-input-placeholder { /* Microsoft Edge */ color: var(--color-placeholder); } ::placeholder { /* Most modern browsers support this now. */ color: var(--color-placeholder); } .placeholder { color: var(--color-placeholder) !important; } /* ------------------------------------------------------------------- * ## change autocomplete styles in Chrome * ------------------------------------------------------------------- */ input:-webkit-autofill, input:-webkit-autofill:hover, input:-webkit-autofill:focus input:-webkit-autofill, textarea:-webkit-autofill, textarea:-webkit-autofill:hover textarea:-webkit-autofill:focus, select:-webkit-autofill, select:-webkit-autofill:hover, select:-webkit-autofill:focus { -webkit-text-fill-color: var(--color-1); -webkit-transition: background-color 5000s ease-in-out 0s; transition: background-color 5000s ease-in-out 0s; } /* =================================================================== * # buttons * * ------------------------------------------------------------------- */ .btn, button, input[type="submit"], input[type="reset"], input[type="button"] { --btn-height: var(--vspace-btn); display: inline-block; font-family: var(--font-2); font-weight: 600; font-size: var(--text-xs); text-transform: uppercase; letter-spacing: .5em; height: var(--btn-height); line-height: calc(var(--btn-height) - .4rem); padding: 0 3.2rem; margin: 0 0.4rem var(--vspace-0_5) 0; color: var(--color-btn-text); text-decoration: none; text-align: center; white-space: nowrap; cursor: pointer; -webkit-transition: all .3s; transition: all .3s; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; background-color: var(--color-btn); border: 0.2rem solid var(--color-btn); } .btn:hover, button:hover, input[type="submit"]:hover, input[type="reset"]:hover, input[type="button"]:hover, .btn:focus, button:focus, input[type="submit"]:focus, input[type="reset"]:focus, input[type="button"]:focus { background-color: var(--color-btn-hover); border-color: var(--color-btn-hover); color: var(--color-btn-hover-text); outline: 0; } /* button primary * ------------------------------------------------- */ .btn.btn--primary, button.btn--primary, input[type="submit"].btn--primary, input[type="reset"].btn--primary, input[type="button"].btn--primary { background: var(--color-btn-primary); border-color: var(--color-btn-primary); color: var(--color-btn-primary-text); } .btn.btn--primary:hover, button.btn--primary:hover, input[type="submit"].btn--primary:hover, input[type="reset"].btn--primary:hover, input[type="button"].btn--primary:hover, .btn.btn--primary:focus, button.btn--primary:focus, input[type="submit"].btn--primary:focus, input[type="reset"].btn--primary:focus, input[type="button"].btn--primary:focus { background: var(--color-btn-primary-hover); border-color: var(--color-btn-primary-hover); color: var(--color-btn-primary-hover-text); } /* button modifiers * ------------------------------------------------- */ .btn.h-full-width, button.h-full-width { width: 100%; margin-right: 0; } .btn--small, button.btn--small { font-size: 1.2rem; --btn-height: calc(var(--vspace-btn) - var(--vspace-0_5)); } .btn--medium, button.btn--medium { --btn-height: calc(var(--vspace-btn) + var(--vspace-0_25)); } .btn--large, button.btn--large { --btn-height: calc(var(--vspace-btn) + var(--vspace-0_5)); } .btn--stroke, button.btn--stroke { background: transparent !important; border: 0.2rem solid var(--color-btn-stroke); color: var(--color-btn-stroke-text); } .btn--stroke:hover, button.btn--stroke:hover { background: var(--color-btn-stroke-hover) !important; border: 0.2rem solid var(--color-btn-stroke-hover); color: var(--color-btn-stroke-hover-text); } .btn--pill, button.btn--pill { padding-left: 3.2rem !important; padding-right: 3.2rem !important; border-radius: 1000px !important; } button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; } /* =================================================================== * # additional components * * ------------------------------------------------------------------- */ /* ------------------------------------------------------------------- * ## additional typo styles * ------------------------------------------------------------------- */ .drop-cap:first-letter { float: left; font-family: var(--font-2); font-weight: 600; font-size: calc(3 * var(--space)); line-height: 1; padding: 0 0.125em 0 0; text-transform: uppercase; background: transparent; color: var(--color-text-dark); } /* line definition style * ----------------------------------------------- */ .lining dt, .lining dd { display: inline; margin: 0; } .lining dt+dt:before, .lining dd+dt:before { content: "\A"; white-space: pre; } .lining dd+dd:before { content: ", "; } .lining dd+dd:before { content: ", "; } .lining dd:before { content: ": "; margin-left: -0.2em; } /* dictionary definition style * ----------------------------------------------- */ .dictionary-style dt { display: inline; counter-reset: definitions; } .dictionary-style dt+dt:before { content: ", "; margin-left: -0.2em; } .dictionary-style dd { display: block; counter-increment: definitions; } .dictionary-style dd:before { content: counter(definitions, decimal) ". "; } /** * Pull Quotes * ----------- * markup: * * <figure class="pull-quote"> * <blockquote> * <p></p> * </blockquote> * </figure> * * --------------------------------------------------------------------- */ .pull-quote { position: relative; padding: 0; margin-top: 0; text-align: center; } .pull-quote blockquote { border: none; margin: 0 auto; max-width: 62rem; padding-top: var(--vspace-2_5); position: relative; } .pull-quote blockquote p { font-weight: 400; color: var(--color-text-dark); } .pull-quote blockquote:before { content: ""; display: block; height: var(--vspace-1); width: var(--vspace-1); background-repeat: no-repeat; background: center center; background-size: contain; background-image: url(../images/icons/icon-quote.svg); -webkit-transform: translateX(-50%); transform: translateX(-50%); position: absolute; top: var(--vspace-1); left: 50%; } /** * Stats Tab * --------- * markup: * * <ul class="stats-tabs"> * <li><a href="#">[value]<em>[name]</em></a></li> * </ul> * * Extend this object into your markup. * * --------------------------------------------------------------------- */ .stats-tabs { padding: 0; margin: var(--vspace-1) 0; } .stats-tabs li { display: inline-block; margin: 0 1.6rem var(--vspace-0_5) 0; padding: 0 1.5rem 0 0; border-right: 1px solid var(--color-border); } .stats-tabs li:last-child { margin: 0; padding: 0; border: none; } .stats-tabs li a { display: inline-block; font-size: var(--text-lg); font-family: var(--font-2); font-weight: 500; line-height: var(--vspace-1_5); border: none; color: var(--color-white); } .stats-tabs li a:hover { color: var(--color-1-light); } .stats-tabs li a em { display: block; margin: 0; font-family: var(--font-1); font-size: var(--text-sm); line-height: var(--vspace-0_5); font-weight: normal; font-style: normal; color: var(--color-text-light); } /* ------------------------------------------------------------------- * ## skillbars * ------------------------------------------------------------------- */ .skill-bars { list-style: none; margin: var(--vspace-2) 0 var(--vspace-1); } .skill-bars li { height: .4rem; background: var(--color-white); width: 100%; margin-bottom: calc(var(--vspace-2) - .4rem); padding: 0; position: relative; } .skill-bars li strong { position: absolute; left: 0; top: calc((var(--vspace-1) * 1.25) * -1); font-family: var(--font-2); font-weight: 500; color: var(--color-white); text-transform: uppercase; letter-spacing: .2em; font-size: 1.4rem; line-height: var(--vspace-0_75); } .skill-bars li .progress { background: var(--color-1); position: relative; height: 100%; } .skill-bars li .progress span { position: absolute; right: 0; top: calc((var(--vspace-1) + .8rem) * -1); display: block; font-family: var(--font-2); color: var(--color-white); font-size: 1rem; line-height: 1; background: var(--color-black); padding: calc(0.25 * var(--space)) calc(0.25 * var(--space)); border-radius: 4px; } .skill-bars li .progress span::after { position: absolute; left: 50%; bottom: -10px; margin-left: -5px; width: 0; height: 0; border: 5px solid transparent; border-top-color: var(--color-black, var(--color-black)); content: ""; } .skill-bars li .percent5 { width: 5%; } .skill-bars li .percent10 { width: 10%; } .skill-bars li .percent15 { width: 15%; } .skill-bars li .percent20 { width: 20%; } .skill-bars li .percent25 { width: 25%; } .skill-bars li .percent30 { width: 30%; } .skill-bars li .percent35 { width: 35%; } .skill-bars li .percent40 { width: 40%; } .skill-bars li .percent45 { width: 45%; } .skill-bars li .percent50 { width: 50%; } .skill-bars li .percent55 { width: 55%; } .skill-bars li .percent60 { width: 60%; } .skill-bars li .percent65 { width: 65%; } .skill-bars li .percent70 { width: 70%; } .skill-bars li .percent75 { width: 75%; } .skill-bars li .percent80 { width: 80%; } .skill-bars li .percent85 { width: 85%; } .skill-bars li .percent90 { width: 90%; } .skill-bars li .percent95 { width: 95%; } .skill-bars li .percent100 { width: 100%; } /* ------------------------------------------------------------------- * ## alert box * ------------------------------------------------------------------- */ .alert-box { padding: var(--vspace-0_75) 4rem var(--vspace-0_75) 3.2rem; position: relative; margin-bottom: var(--vspace-1); border-radius: 4px; font-family: var(--font-1); font-weight: 500; font-size: var(--text-sm); line-height: var(--vspace-0_75); } .alert-box__close { position: absolute; display: block; right: 1.6rem; top: 1.6rem; cursor: pointer; width: 12px; height: 12px; } .alert-box__close::before, .alert-box__close::after { content: ''; position: absolute; display: inline-block; width: 2px; height: 12px; top: 0; left: 5px; } .alert-box__close::before { -webkit-transform: rotate(45deg); transform: rotate(45deg); } .alert-box__close::after { -webkit-transform: rotate(-45deg); transform: rotate(-45deg); } .alert-box--error { background-color: var(--color-error); color: var(--color-error-content); } .alert-box--error .alert-box__close::before, .alert-box--error .alert-box__close::after { background-color: var(--color-error-content); } .alert-box--success { background-color: var(--color-success); color: var(--color-success-content); } .alert-box--success .alert-box__close::before, .alert-box--success .alert-box__close::after { background-color: var(--color-success-content); } .alert-box--info { background-color: var(--color-info); color: var(--color-info-content); } .alert-box--info .alert-box__close::before, .alert-box--info .alert-box__close::after { background-color: var(--color-info-content); } .alert-box--notice { background-color: var(--color-notice); color: var(--color-notice-content); } .alert-box--notice .alert-box__close::before, .alert-box--notice .alert-box__close::after { background-color: var(--color-notice-content); } /* =================================================================== * # common and reusable styles * * ------------------------------------------------------------------- */ .wide { max-width: var(--width-wide); } .wider { max-width: var(--width-wider); } .narrow { max-width: var(--width-narrow); } .narrower { max-width: var(--width-narrower); } .section-title { display: block; margin-bottom: var(--vspace-2); position: relative; } .section-title::before { content: attr(data-num); font-family: var(--font-2); font-weight: 600; font-size: calc(var(--text-size) * 10); line-height: 1; letter-spacing: -0.02em; color: var(--color-text); opacity: .1; } .section-title h3 { z-index: 2; font-weight: 500; color: var(--color-1); padding-bottom: 2em; margin-top: 0; position: absolute; left: 1em; bottom: 0; } .display-1 { font-size: var(--text-xxl); font-weight: 500; line-height: var(--vspace-1_75); margin-top: 0; } .item-title { font-family: var(--font-2); font-weight: 500; font-size: var(--text-lg); line-height: var(--vspace-1_25); margin-top: 0; margin-bottom: var(--vspace-0_5); } /* ------------------------------------------------------------------- * ## item list * ------------------------------------------------------------------- */ .item-list { margin-top: var(--vspace-2_5); } .item-list .item { padding-right: 8.6rem; margin-bottom: var(--vspace-0_5); } /* ------------------------------------------------------------------- * ## slick slider * ------------------------------------------------------------------- */ .slick-slider .slick-slide { outline: none; } .slick-slider .slick-dots { display: block; list-style: none; width: 100%; padding: 0; margin: var(--vspace-1) 0 0 0; text-align: center; position: absolute; top: 100%; left: 0; } .slick-slider .slick-dots li { display: inline-block; width: 28px; height: 28px; margin: 0; padding: 10px; cursor: pointer; } .slick-slider .slick-dots li button { display: block; width: 8px; height: 8px; border-radius: 50%; background: white; border: none; line-height: 8px; padding: 0; margin: 0; cursor: pointer; font: 0/0 a; text-shadow: none; color: transparent; } .slick-slider .slick-dots li button:hover, .slick-slider .slick-dots li button:focus { outline: none; } .slick-slider .slick-dots li.slick-active button, .slick-slider .slick-dots li:hover button { background: var(--color-1); } /* ------------------------------------------------------------------- * responsive: * common and reusable styles * ------------------------------------------------------------------- */ @media screen and (max-width: 1100px) { .item-list .item { padding-right: 2rem; } } @media screen and (max-width: 1000px) { .section-title::before { font-size: calc(var(--text-size) * 8); } } @media screen and (max-width: 800px) { .section-title { margin-bottom: var(--vspace-1); } .item-list .item { margin-bottom: 0; } .item-list .item { padding-right: var(--gutter-md); } } @media screen and (max-width: 600px) { .item-list .item { padding-right: var(--gutter-mob); } } @media screen and (max-width: 400px) { .display-1 { font-size: var(--text-xl); line-height: var(--vspace-1_5); } .item-title { font-size: var(--text-md); line-height: var(--vspace-1); } .item-list .item { padding-right: 0; } } /* =================================================================== * # site header * * ------------------------------------------------------------------- */ .s-header { z-index: 100; width: 100%; height: 8.8rem; position: absolute; top: var(--vspace-0_75); left: 0; } .s-header.offset { -webkit-transform: translateY(-100%); transform: translateY(-100%); -webkit-transition: all .5s; transition: all .5s; } .s-header.scrolling { -webkit-transform: translateY(0); transform: translateY(0); } .s-header.sticky { background-color: var(--color-gray-19); opacity: 0; visibility: hidden; position: fixed; top: 0; left: 0; } .s-header.sticky .s-header__content .btn { --btn-height: calc(var(--vspace-btn) - 1.6rem) !important; } .s-header.sticky .header-nav a { color: rgba(255, 255, 255, 0.6); } .s-header.sticky.scrolling { opacity: 1; visibility: visible; } .s-header__content { height: 8.8rem; position: relative; } /* ------------------------------------------------------------------- * ## header logo * ------------------------------------------------------------------- */ .s-header__logo { z-index: 101; display: inline-block; margin: 0; padding: 0; -webkit-transform: translateY(-50%); transform: translateY(-50%); -webkit-transition: all .5s; transition: all .5s; position: absolute; left: 8rem; top: calc(50% - 2px); } .s-header__logo a { display: block; border: none; padding: 0; outline: 0; } .s-header__logo img { width: 68px; height: 10px; margin-bottom: 0; } /* ------------------------------------------------------------------- * ## main navigation * ------------------------------------------------------------------- */ .s-header__nav-wrap { padding-left: 21.6rem; } .s-header__nav { list-style: none; font-family: var(--font-2); font-weight: 500; font-size: 1rem; line-height: 6rem; padding-top: 1.4rem; padding-bottom: 1.4rem; margin: 0; text-transform: uppercase; letter-spacing: .4em; } .s-header__nav a { color: var(--color-gray-8); } .s-header__nav a:hover, .s-header__nav a:focus { color: white !important; } .s-header__nav li { display: inline-block; padding-left: 0; margin: 0 1rem; } /* ------------------------------------------------------------------- * ## mobile menu toggle * ------------------------------------------------------------------- */ .s-header__menu-toggle { z-index: 101; display: none; height: 4.2rem; width: 4.2rem; line-height: 4.2rem; font-family: var(--font-2); font-size: 1.4rem; text-transform: uppercase; letter-spacing: .2rem; color: white; outline: none; -webkit-transition: all .5s; transition: all .5s; position: absolute; right: 5.2rem; top: 1.6rem; } .s-header__menu-toggle:hover, .s-header__menu-toggle:focus { color: white; } .s-header__menu-toggle span { display: block; width: 2.4rem; height: 2px; background-color: white; -webkit-transition: all .5s; transition: all .5s; font: 0/0 a; text-shadow: none; color: transparent; margin-top: -1px; position: absolute; top: 50%; left: .9rem; right: auto; bottom: auto; } .s-header__menu-toggle span::before, .s-header__menu-toggle span::after { content: ''; width: 100%; height: 100%; background-color: inherit; -webkit-transition: all .5s; transition: all .5s; position: absolute; left: 0; } .s-header__menu-toggle span::before { top: -.9rem; } .s-header__menu-toggle span::after { bottom: -.9rem; } .s-header__menu-toggle.is-clicked span { background-color: rgba(255, 255, 255, 0); -webkit-transition: all .1s; transition: all .1s; } .s-header__menu-toggle.is-clicked span::before, .s-header__menu-toggle.is-clicked span::after { background-color: white; } .s-header__menu-toggle.is-clicked span::before { top: 0; -webkit-transform: rotate(135deg); transform: rotate(135deg); } .s-header__menu-toggle.is-clicked span::after { bottom: 0; -webkit-transform: rotate(225deg); transform: rotate(225deg); } /* ------------------------------------------------------------------- * ## header contact button * ------------------------------------------------------------------- */ .s-header__content .btn { --btn-height: calc(var(--vspace-btn) - 1.2rem); font-size: 1rem; padding: 0 2.8rem; margin: 0; -webkit-transform: translateY(-50%); transform: translateY(-50%); display: -ms-flexbox; display: -webkit-box; display: flex; -ms-flex-align: center; -webkit-box-align: center; align-items: center; -ms-flex-pack: center; -webkit-box-pack: center; justify-content: center; position: absolute; top: 50%; right: 10rem; } .s-header__content .btn svg { height: var(--vspace-0_5); width: var(--vspace-0_5); margin-right: 1.6rem; -webkit-transform: translateY(-0.1rem); transform: translateY(-0.1rem); } .s-header__content .btn svg path { fill: white; } .s-header__content .btn:hover, .s-header__content .btn:focus { background-color: var(--color-gray-19) !important; border-color: var(--color-gray-19) !important; color: white; } .sticky .s-header__content .btn:hover, .sticky .s-header__content .btn:focus { background-color: white !important; border-color: white !important; color: black; } .sticky .s-header__content .btn:hover svg path, .sticky .s-header__content .btn:focus svg path { fill: black; } /* ------------------------------------------------------------------- * responsive: * header * ------------------------------------------------------------------- */ @media screen and (max-width: 1700px) { .s-header__logo { left: 6rem; } .s-header__nav-wrap { padding-left: 19.6rem; } .s-header__content .btn { right: 6rem; } } @media screen and (max-width: 1000px) { .s-header__nav-wrap { padding-left: 17.6rem; } .s-header__content .btn { --btn-height: calc(var(--vspace-btn) - 1.6rem) !important; } } @media screen and (max-width: 900px) { .s-header { top: var(--vspace-0_5); height: 8rem; } .s-header.sticky .s-header__content .btn, .s-header .s-header__content .btn { --btn-height: calc(var(--vspace-btn) - 1.2rem) !important; } .s-header.sticky .s-header__content .btn:hover, .s-header.sticky .s-header__content .btn:focus, .s-header .s-header__content .btn:hover, .s-header .s-header__content .btn:focus { background-color: white !important; border-color: white !important; color: black; } .s-header.sticky .s-header__content .btn:hover svg path, .s-header.sticky .s-header__content .btn:focus svg path, .s-header .s-header__content .btn:hover svg path, .s-header .s-header__content .btn:focus svg path { fill: black; } .s-header__content { display: block; background-color: var(--color-gray-19); height: auto; width: 100%; padding: calc(5 * var(--space)) 6rem var(--vspace-2); -webkit-transform: translateY(-100%); transform: translateY(-100%); position: absolute; top: calc(var(--vspace-0_5) * -1); left: 0; } .s-header__content .btn { margin-top: var(--vspace-1_5); text-align: center; -webkit-transform: translateY(-2rem); transform: translateY(-2rem); opacity: 0; visibility: hidden; position: static; } .s-header__nav-wrap { padding: 0; -webkit-transform: translateY(-2rem); transform: translateY(-2rem); opacity: 0; visibility: hidden; } .s-header__nav { display: block; width: 100%; padding: 0; } .s-header__nav a { display: block; } .s-header__nav li { border-top: 1px solid rgba(255, 255, 255, 0.03); display: block; margin: 0; } .s-header__nav li:last-child { border-bottom: 1px solid rgba(255, 255, 255, 0.03); } .s-header__menu-toggle { display: block; } .menu-is-open .s-header__content { -webkit-transform: translateY(0); transform: translateY(0); -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1); transition: -webkit-transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1); transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1); transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1); } .menu-is-open .s-header__content .btn { -webkit-transform: translateY(0); transform: translateY(0); opacity: 1; visibility: visible; -webkit-transition-property: opacity, -webkit-transform; transition-property: opacity, -webkit-transform; transition-property: transform, opacity; transition-property: transform, opacity, -webkit-transform; -webkit-transition-duration: .5s; transition-duration: .5s; -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); -webkit-transition-delay: .7s; transition-delay: .7s; } .menu-is-open .s-header__nav-wrap { -webkit-transform: translateY(0); transform: translateY(0); opacity: 1; visibility: visible; -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1); transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1); -webkit-transition-delay: .6s; transition-delay: .6s; } } @media screen and (max-width: 600px) { .s-header__logo { left: 4rem; } .s-header__menu-toggle { right: 4rem; } .s-header__content { padding: calc(5 * var(--space)) 4rem var(--vspace-2); } .s-header__content .btn { display: block; } .s-header__content .btn svg { -webkit-transform: translateY(0.3rem); transform: translateY(0.3rem); } } /* =================================================================== * # hero * * ------------------------------------------------------------------- */ .s-hero { background-color: #121417; width: 100%; height: 100vh; min-height: calc(25.5 * var(--space)); overflow: hidden; position: relative; } .s-hero__bg { background-image: url(../images/hero-bg.jpg); background-repeat: no-repeat; background-position: center; background-size: cover; position: absolute; top: 0; right: 0; bottom: 0; left: 36.5vw; } .s-hero__bg::after { display: block; content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: var(--color-black); opacity: .25; } .s-hero__bg .gradient-overlay { display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: -webkit-gradient(linear, left top, left bottom, color-stop(10%, black), to(rgba(0, 0, 0, 0))); background: linear-gradient(180deg, black 10%, rgba(0, 0, 0, 0) 100%); opacity: .35; } /* ------------------------------------------------------------------- * ## hero content * ------------------------------------------------------------------- */ .s-hero__content { height: 100%; -ms-flex-align: end; -webkit-box-align: end; align-items: flex-end; padding-top: 20vh; padding-bottom: 7vh; position: relative; } .s-hero__content h1 { font-size: 22rem; font-weight: 600; letter-spacing: -.04em; line-height: 1; color: var(--color-1); margin-bottom: 0; position: relative; } .s-hero__content h1::before { display: block; content: ""; height: 10rem; width: 20rem; background-image: url(../images/dots.svg); -webkit-transform: translateX(-4rem); transform: translateX(-4rem); opacity: .25; position: absolute; bottom: .14em; right: 100%; } /* hero content about * ----------------------------------------------- */ .s-hero__content-about { font-family: var(--font-2); font-weight: 400; font-size: 3.6rem; line-height: 1.444; color: var(--color-white); padding-left: 3.6em; position: relative; } .s-hero__content-about::before { content: ""; display: block; height: 1px; width: 2.4em; background-color: var(--color-border); position: absolute; left: .5em; top: .8em; } .s-hero__content-about p { margin-bottom: var(--vspace-2); } /* hero content social * ----------------------------------------------- */ .s-hero__content-social { display: inline-block; font-size: 1.8rem; line-height: var(--vspace-1); } .s-hero__content-social a { color: white; margin-right: 1.2rem; } .s-hero__content-social a:hover, .s-hero__content-social a:focus { color: var(--color-1-light); } .s-hero__content-social a:last-child { margin-right: 0; } /* ------------------------------------------------------------------- * ## hero video * ------------------------------------------------------------------- */ .s-hero__video { position: absolute; right: 10.4rem; bottom: 20vh; } .s-hero__video svg { height: 1.4rem; width: 1.4rem; position: absolute; -webkit-transform: translate3d(-50%, -50%, 0); transform: translate3d(-50%, -50%, 0); left: 50%; top: 50%; } .s-hero__video svg path { fill: white; } .s-hero__video-link { display: block; height: 9.6rem; width: 9.6rem; background-color: var(--color-1); -webkit-transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out; transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out; color: white; border-radius: 100%; position: relative; } .s-hero__video-link:hover, .s-hero__video-link:focus { background-color: var(--color-gray-19); outline: 0; } .s-hero__video-text { display: none; } /* ------------------------------------------------------------------- * ## hero scroll * ------------------------------------------------------------------- */ .s-hero__scroll { position: absolute; left: 6vw; bottom: 0; -webkit-transform: rotate(90deg) translateX(-200px); transform: rotate(90deg) translateX(-200px); -webkit-transform-origin: left bottom; transform-origin: left bottom; } .s-hero__scroll-link { display: inline-block; font-family: var(--font-2); font-weight: 300; font-size: 9px; line-height: 3.2rem; height: 3.2rem; text-transform: uppercase; letter-spacing: .4em; text-align: left; vertical-align: middle; color: var(--color-text); position: relative; } .s-hero__scroll-link:hover, .s-hero__scroll-link:focus { color: white; } /* ------------------------------------------------------------------- * ## animate intro content * ------------------------------------------------------------------- */ html.ss-preload .s-hero__content { opacity: 0; } html.ss-loaded .s-hero__content { -webkit-animation-name: fadeIn; animation-name: fadeIn; -webkit-animation-duration: 3s; animation-duration: 3s; -webkit-animation-timing-function: cubic-bezier(0.23, 1, 0.32, 1); animation-timing-function: cubic-bezier(0.23, 1, 0.32, 1); -webkit-animation-fill-mode: both; animation-fill-mode: both; } html.no-csstransitions .s-hero__content { opacity: 1; } /* ------------------------------------------------------------------- * ## animations * ------------------------------------------------------------------- */ /* fade in */ @-webkit-keyframes fadeIn { from { opacity: 0; visibility: hidden; -webkit-transform: translate3d(0, 100%, 0); transform: translate3d(0, 100%, 0); } to { opacity: 1; visibility: visible; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); } } @keyframes fadeIn { from { opacity: 0; visibility: hidden; -webkit-transform: translate3d(0, 100%, 0); transform: translate3d(0, 100%, 0); } to { opacity: 1; visibility: visible; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); } } /* fade in left */ @-webkit-keyframes fadeInLeft { from { opacity: 0; visibility: hidden; -webkit-transform: translate3d(-100%, 0, 0); transform: translate3d(-100%, 0, 0); } to { opacity: 1; visibility: visible; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); } } @keyframes fadeInLeft { from { opacity: 0; visibility: hidden; -webkit-transform: translate3d(-100%, 0, 0); transform: translate3d(-100%, 0, 0); } to { opacity: 1; visibility: visible; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); } } /* fade out */ @-webkit-keyframes fadeOut { from { opacity: 1; visibility: visible; } to { opacity: 0; visibility: hidden; -webkit-transform: translate3d(0, -100%, 0); transform: translate3d(0, -100%, 0); } } @keyframes fadeOut { from { opacity: 1; visibility: visible; } to { opacity: 0; visibility: hidden; -webkit-transform: translate3d(0, -100%, 0); transform: translate3d(0, -100%, 0); } } /* ------------------------------------------------------------------- * responsive: * content * ------------------------------------------------------------------- */ @media screen and (max-width: 1600px) { .s-hero__content { max-width: 1100px; } } @media screen and (max-width: 1400px) { .s-hero__content { max-width: 1000px; } .s-hero__content h1 { font-size: 20rem; } .s-hero__content-about { font-size: 3.3rem; } .s-hero__video-link { height: 8.8rem; width: 8.8rem; } } @media screen and (max-width: 1200px) { .s-hero__content { max-width: 900px; } } @media screen and (max-width: 1100px) { .s-hero__content { max-width: 800px; } .s-hero__content h1 { font-size: 18rem; } } @media screen and (max-width: 1000px) { .s-hero__content { max-width: 700px; } .s-hero__content-about { padding-left: .6em; } .s-hero__content-about::before { display: none; } .s-hero__video { right: calc(100% - 48vw); bottom: calc(7vh); } .s-hero__video svg { display: inline-block; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); margin-right: .4rem; position: static; } .s-hero__video-link { display: inline-block; height: auto; width: auto; background-color: transparent !important; -webkit-transition: background-color 0s ease-in-out, color 0.3s ease-in-out; transition: background-color 0s ease-in-out, color 0.3s ease-in-out; border-radius: 0; } .s-hero__video-text { display: inline-block; } .s-hero__scroll { left: auto; right: 4.8rem; -webkit-transform: rotate(90deg) translateX(-100px) translateY(3.2rem); transform: rotate(90deg) translateX(-100px) translateY(3.2rem); -webkit-transform-origin: right bottom; transform-origin: right bottom; } .s-hero__scroll-link { color: var(--color-white); } } @media screen and (max-width: 900px) { .s-hero__bg { display: block; width: 50vw; height: 50vh; top: 12rem; right: 0; bottom: auto; left: auto; } .s-hero__content { max-width: 600px; } .s-hero__video { right: calc(100% - 54vw); } .s-hero__scroll-link { color: var(--color-text); } } @media screen and (max-width: 800px) { .s-hero__content { padding-bottom: 8vh; } .s-hero__content h1::before { -webkit-transform: translateX(0); transform: translateX(0); left: -1.2rem; bottom: .8em; } .s-hero__video { bottom: calc(8vh); } } @media screen and (max-width: 700px) { .s-hero__content h1 { font-size: 16rem; } .s-hero__content-about { font-size: 2.8rem; } .s-hero__content-social, .s-hero__video { font-size: 1.6rem; } } @media screen and (max-width: 600px) { .s-hero__content h1 { font-size: 28vw; } .s-hero__content-about { padding-right: 15vw; } .s-hero__content-about br { display: none; } .s-hero__scroll { right: 2.8rem; } .s-hero__video { right: calc(100% - 30rem); } } @media screen and (max-width: 500px) { .s-hero__content h1::before { left: -6rem; bottom: .6em; } .s-hero__content-about { font-size: 2.6rem; padding-right: 4rem; padding-left: .5em; } } @media screen and (max-width: 400px) { .s-header__logo { left: 3.2rem; } .s-header__menu-toggle { right: 3.2rem; } .s-hero__content h1::before { left: -8rem; } .s-hero__content { padding-bottom: 14vh; } .s-hero__content-about { font-size: 2.2rem; padding-right: 6rem; } .s-hero__video { right: auto; left: 9vw; bottom: 8.2vh; } } @media screen and (max-width: 360px) { .s-hero__scroll { right: 2rem; -webkit-transform: rotate(90deg) translateX(-4rem) translateY(3.2rem); transform: rotate(90deg) translateX(-4rem) translateY(3.2rem); padding-right: 0; } } /* =================================================================== * # about * * ------------------------------------------------------------------- */ .s-about { background-color: var(--color-bg); padding-top: calc(7 * var(--space)); padding-bottom: 0; position: relative; } .s-about::before { content: ""; display: block; width: 28rem; height: 17.6rem; background-image: url(../images/dots.svg); opacity: .25; position: absolute; top: 0; left: 50%; } .s-about .horizontal-line { width: 32px; height: 20rem; position: absolute; top: -7rem; left: calc(6vw + 1px); } .s-about .horizontal-line::before { content: ""; display: block; width: 1px; background-color: var(--color-1-darker); position: absolute; right: calc(50% + 1px); top: 0; bottom: 0; } /* ------------------------------------------------------------------- * ## about photo * ------------------------------------------------------------------- */ .s-about__photo-block { position: relative; } .s-about__photo { background-image: url(../images/about-photo.jpg); background-repeat: no-repeat; background-position: center; background-size: cover; position: absolute; top: var(--vspace-0_5); right: var(--gutter-lg); left: var(--gutter-lg); bottom: var(--vspace-1); } /* ------------------------------------------------------------------- * ## about process * ------------------------------------------------------------------- */ .s-about__process { counter-reset: ctr; } .s-about__process h3 { padding-left: 2.5em; position: relative; } .s-about__process h3::before { content: counter(ctr); counter-increment: ctr; display: block; font-family: var(--font-2); font-size: var(--text-size); font-weight: 600; text-align: center; color: white; background-color: var(--color-1); height: var(--vspace-1_5); width: var(--vspace-1_5); line-height: var(--vspace-1_5); border-radius: 50%; position: absolute; left: 0; top: -5px; } .s-about__process .item-process { position: relative; } /* ------------------------------------------------------------------- * responsive: * about * ------------------------------------------------------------------- */ @media screen and (max-width: 1400px) { .s-about::before { right: 15vw; left: auto; } } @media screen and (max-width: 1000px) { .s-about { padding-top: calc(5 * var(--space)); } .s-about .horizontal-line { right: calc(4.6rem); left: auto; } } @media screen and (max-width: 900px) { .s-about__photo-block { display: none; } } @media screen and (max-width: 800px) { .s-about::before { display: none; } } @media screen and (max-width: 600px) { .s-about .horizontal-line { right: calc(2.6rem); } } @media screen and (max-width: 400px) { .s-about { padding-top: var(--vspace-4); } .s-about__process h3 { padding-left: 3em; margin-bottom: var(--vspace-0_75); } } @media screen and (max-width: 360px) { .s-about .horizontal-line { height: 16rem; top: -2rem; right: calc(1.8rem); } } /* =================================================================== * # services * * ------------------------------------------------------------------- */ .s-services { background-color: var(--color-bg); padding-top: calc(6 * var(--space)); padding-bottom: var(--vspace-2); } .s-services .lead { margin-top: var(--vspace-0_25); } .s-services .item-service { margin-bottom: 0; } .service-icon { display: block; width: calc(2.25 * var(--space)); height: calc(2.25 * var(--space)); background-repeat: no-repeat; background-position: center; background-size: contain; } .service-icon--product-design { background-image: url(../images/icons/services/icon-product-design.svg); } .service-icon--branding { background-image: url(../images/icons/services/icon-branding.svg); } .service-icon--frontend { background-image: url(../images/icons/services/icon-frontend.svg); } .service-icon--research { background-image: url(../images/icons/services/icon-research.svg); } .service-icon--illustration { background-image: url(../images/icons/services/icon-illustration.svg); } .service-icon--ecommerce { background-image: url(../images/icons/services/icon-ecommerce.svg); } /* ------------------------------------------------------------------- * responsive: * services * ------------------------------------------------------------------- */ @media screen and (max-width: 1200px) { .s-services { padding-top: calc(5 * var(--space)); } } @media screen and (max-width: 400px) { .s-services { padding-top: var(--vspace-4); } } /* =================================================================== * # portfolio * * ------------------------------------------------------------------- */ .s-portfolio { background-color: var(--color-bg); padding-top: calc(7 * var(--space)); padding-bottom: 0; } /* ------------------------------------------------------------------- * ## portfolio list * ------------------------------------------------------------------- */ .s-portfolio__list { max-width: calc(var(--width-max) + 40px); padding-top: var(--vspace-1_5); } .folio-item { position: relative; overflow: hidden; } .folio-item__caption { display: none; } /* thumbnail *---------------------------------------------- */ .folio-item__thumb a { display: block; } .folio-item__thumb a::before { z-index: 1; content: ""; display: block; background-color: rgba(0, 0, 0, 0.85); opacity: 0; visibility: hidden; position: absolute; top: 0; left: 0; width: 100%; height: 100%; -webkit-transition: all, .5s; transition: all, .5s; } .folio-item__thumb a::after { z-index: 1; content: "+"; font-family: var(--font-2); font-weight: 300; font-size: 3rem; color: white; display: block; height: 32px; width: 32px; line-height: 32px; margin-left: -16px; margin-top: -16px; text-align: center; opacity: 0; visibility: hidden; -webkit-transform: scale(0.5); transform: scale(0.5); -webkit-transition: all, 0.5s cubic-bezier(0.215, 0.61, 0.355, 1); transition: all, 0.5s cubic-bezier(0.215, 0.61, 0.355, 1); position: absolute; left: 50%; top: 50%; } .folio-item__thumb img { vertical-align: bottom; margin-bottom: 0; } /* portfolio info *---------------------------------------------- */ .folio-item__info { z-index: 2; padding: 0 3rem; -webkit-transform: translateY(-100%); transform: translateY(-100%); opacity: 0; visibility: hidden; -webkit-transition: all, 0.5s cubic-bezier(0.215, 0.61, 0.355, 1); transition: all, 0.5s cubic-bezier(0.215, 0.61, 0.355, 1); position: absolute; left: 0; top: 3.6rem; } .folio-item__title { color: white; font-weight: 400; font-size: 1.6rem; line-height: 1.5; margin: 0; } .folio-item__cat { color: rgba(255, 255, 255, 0.5); font-family: var(--font-2); font-size: 1.2rem; line-height: 2; margin-bottom: 0; } .folio-item__project-link { z-index: 2; display: block; font-family: var(--font-2); font-weight: 400; font-size: 1.2rem; line-height: 2rem; color: white; background-color: transparent; border: 1px solid rgba(255, 255, 255, 0.3); padding: .6rem 1.2rem; opacity: 0; visibility: hidden; -webkit-transform: translateX(-100%); transform: translateX(-100%); -webkit-transition: all, 0.5s cubic-bezier(0.215, 0.61, 0.355, 1); transition: all, 0.5s cubic-bezier(0.215, 0.61, 0.355, 1); position: absolute; bottom: 3.9rem; left: 3rem; } .folio-item__project-link::before { display: block; content: ""; height: 1px; width: 3rem; background-color: rgba(255, 255, 255, 0.3); position: absolute; top: 50%; left: -3rem; } .folio-item__project-link:hover, .folio-item__project-link:focus, .folio-item__project-link:active { background-color: white; border: 1px solid white; color: black; } /* on hover *---------------------------------------------- */ .folio-item:hover .folio-item__thumb a::before { opacity: 1; visibility: visible; } .folio-item:hover .folio-item__thumb a::after { opacity: 1; visibility: visible; -webkit-transform: scale(1); transform: scale(1); } .folio-item:hover .folio-item__info { opacity: 1; visibility: visible; -webkit-transform: translateY(0); transform: translateY(0); } .folio-item:hover .folio-item__project-link { opacity: 1; visibility: visible; -webkit-transform: translateX(0); transform: translateX(0); } /* ------------------------------------------------------------------- * responsive: * portfolio * ------------------------------------------------------------------- */ @media screen and (max-width: 1200px) { .s-portfolio { padding-top: calc(5 * var(--space)); } .folio-item__thumb a::after { font-size: 2rem; } .folio-item__title { font-size: 1.5rem; } .folio-item__cat { font-size: 1.1rem; } } @media screen and (max-width: 800px) { .folio-item__thumb a::after { font-size: 3rem; } .folio-item__title { font-size: 1.6rem; } .folio-item__cat { font-size: 1.2rem; } } @media screen and (max-width: 600px) { .folio-item__thumb a::after { font-size: 2rem; } .folio-item__title { font-size: 1.5rem; } .folio-item__cat { font-size: 1.1rem; } } @media screen and (max-width: 400px) { .s-portfolio { padding-top: var(--vspace-4); } } /* =================================================================== * # clients * * ------------------------------------------------------------------- */ .s-clients { background-color: var(--color-bg); padding-top: calc(6 * var(--space)); padding-bottom: var(--vspace-4); position: relative; } /* ------------------------------------------------------------------- * ## clients slider * ------------------------------------------------------------------- */ .clients-outer { max-width: 1080px; margin-top: var(--vspace-2); margin-bottom: var(--vspace-2); text-align: center; position: relative; } .clients-outer .column { min-height: 0; min-width: 0; } .clients__slide { display: block; opacity: .15; padding: 0; -webkit-transition: opacity .5s; transition: opacity .5s; text-align: center; } .clients__slide img { padding: 0 2rem; } .clients__slide:hover, .clients__slide:focus { opacity: 1; } /* ------------------------------------------------------------------- * ## testimonials * ------------------------------------------------------------------- */ .testimonials { background-color: var(--color-bg); max-width: 800px; padding-top: var(--vspace-4); padding-bottom: var(--vspace-1_5); text-align: center; } .testimonials .slick-arrow { z-index: 2; position: absolute; top: calc(2.5 * var(--space)); width: var(--vspace-1); height: var(--vspace-1); border: none; margin: 0; padding: 0; background-color: transparent; background-repeat: no-repeat; background-size: contain; background-position: center; cursor: pointer; -webkit-transition: all .3s; transition: all .3s; font: 0/0 a; text-shadow: none; color: transparent; opacity: .15; } .testimonials .slick-arrow:hover, .testimonials .slick-arrow:focus { opacity: 1; } .testimonials .slick-prev { left: -100px; background-image: url("../images/icons/icon-arrow-left.svg"); } .testimonials .slick-next { right: -100px; background-image: url("../images/icons/icon-arrow-right.svg"); } .testimonial-slider { position: relative; } .testimonial-slider p { font-size: var(--text-lg); line-height: 1.852; color: white; } .testimonial-slider__slide { position: relative; padding: 0 var(--gutter-lg); } .testimonial-slider__author { display: inline-block; min-height: 7.2rem; margin-top: var(--vspace-1); padding-left: 8.4rem; text-align: left; position: relative; } .testimonial-slider__avatar { width: var(--vspace-2); height: var(--vspace-2); border-radius: 100%; outline: none; margin-right: 1.6rem; margin-bottom: 0; position: absolute; top: 0; left: 0; } .testimonial-slider__cite { display: block; padding-top: calc(0.125 * var(--space)); font-style: normal; } .testimonial-slider__cite strong { font-size: var(--text-size); color: var(--color-1); } .testimonial-slider__cite span { display: block; font-size: 1.4rem; font-weight: 400; line-height: var(--vspace-0_5); color: var(--color-text-light); } /* ------------------------------------------------------------------- * responsive: * clients * ------------------------------------------------------------------- */ @media screen and (max-width: 1400px) { .clients-outer { max-width: 1000px; } .testimonials { max-width: 700px; } .testimonials .slick-prev { left: -60px; } .testimonials .slick-next { right: -60px; } } @media screen and (max-width: 900px) { .testimonials { max-width: 600px; } .testimonials .slick-arrow { top: auto; bottom: var(--vspace-1); } .testimonials .slick-prev { left: 1.2rem; } .testimonials .slick-next { right: 1.2rem; } } @media screen and (max-width: 800px) { .clients-outer { max-width: 640px; } .testimonial-slider p { font-size: var(--text-md); } .testimonial-slider__author { min-height: 0; margin-top: var(--vspace-0_5); padding-left: 0; text-align: center; } .testimonial-slider__avatar { margin: 0 auto; position: static; } } @media screen and (max-width: 600px) { .testimonial-slider__slide { padding: 0; } .testimonial-slider__avatar { width: var(--vspace-1_75); height: var(--vspace-1_75); } } @media screen and (max-width: 400px) { .testimonials { padding-top: var(--vspace-2); } .testimonial-slider p { font-size: var(--text-size); } } /* =================================================================== * # contact * * ------------------------------------------------------------------- */ .s-contact { background-color: var(--color-1); padding-top: calc(6 * var(--space)); padding-bottom: var(--vspace-2); } .s-contact__top .h6 { color: black; margin-top: 0; margin-bottom: var(--vspace-1); } .s-contact__email { margin-top: var(--vspace-1_5); font-family: var(--font-2); font-size: calc(var(--text-size) * 6.6); font-weight: 500; letter-spacing: -0.01em; line-height: 1; } .s-contact__email a { color: white; border-bottom: 2px solid transparent; } .s-contact__email a:hover, .s-contact__email a:focus { border-bottom: 2px solid white; } /* ------------------------------------------------------------------- * responsive: * contact * ------------------------------------------------------------------- */ @media screen and (max-width: 1600px) { .s-contact__email { font-size: calc(var(--text-size) * 6); } } @media screen and (max-width: 1200px) { .s-contact__email { font-size: 10vw; } } @media screen and (max-width: 400px) { .s-contact { padding-top: var(--vspace-4); } } /* =================================================================== * # footer * * ------------------------------------------------------------------- */ .s-footer { padding-top: var(--vspace-2); padding-bottom: var(--vspace-4); color: white; } .s-footer a { color: white; } .s-footer .h6 { color: black; margin-top: 0; } /* ------------------------------------------------------------------- * ## footer block * ------------------------------------------------------------------- */ .s-footer__block { font-size: var(--text-lg); line-height: calc(1.25 * var(--space)); } .s-footer__block .h6 { margin-bottom: var(--vspace-0_75); } .s-footer__block--end { font-size: var(--text-sm); line-height: var(--vspace-1); padding-top: var(--vspace-1_75); position: relative; } .s-footer__block--end::before { display: block; content: ""; height: 1px; width: 33.333%; background-color: rgba(0, 0, 0, 0.5); position: absolute; top: var(--vspace-0_25); left: var(--gutter-lg); } .s-footer__block--end .btn { background-color: white; border: .2rem solid white; color: black; margin-right: 0; margin-bottom: var(--vspace-1); } .s-footer__block--end .btn:hover, .s-footer__block--end .btn:focus { background-color: var(--color-gray-19); border: 0.2rem solid var(--color-gray-19); color: white; } /* ------------------------------------------------------------------- * ## footer list * ------------------------------------------------------------------- */ .s-footer__list { list-style: none; margin-left: 0; } .s-footer__list li { padding-left: 0; } /* ------------------------------------------------------------------- * ## copyright * ------------------------------------------------------------------- */ .ss-copyright { z-index: 2; font-size: 1.5rem; font-weight: 300; position: relative; } .ss-copyright a { display: inline-block; color: white; border-bottom: 1px dotted rgba(255, 255, 255, 0.2); } .ss-copyright a:hover, .ss-copyright a:focus { border-bottom: 1px solid white; } .ss-copyright span { display: inline-block; } .ss-copyright span::after { content: "|"; display: inline-block; padding: 0 .8rem 0 1rem; color: rgba(255, 255, 255, 0.25); } .ss-copyright span:last-child::after { display: none; } /* ------------------------------------------------------------------- * ## go top * ------------------------------------------------------------------- */ .ss-go-top { z-index: 2; opacity: 0; visibility: hidden; -webkit-transform: scale(0); transform: scale(0); -webkit-transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1); transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1); position: fixed; bottom: var(--vspace-1); right: 4rem; } .ss-go-top a { text-decoration: none; border: 0 none; display: block; height: 6.4rem; width: 6.4rem; line-height: 6.4rem; text-align: center; border-radius: 50%; background-color: var(--color-gray-19) !important; -webkit-transition: all .3s; transition: all .3s; position: relative; } .ss-go-top.link-is-visible { opacity: 1; visibility: visible; -webkit-transform: scale(1); transform: scale(1); } /* ------------------------------------------------------------------- * responsive: * footer * ------------------------------------------------------------------- */ @media screen and (max-width: 1400px) { .s-footer>.row { max-width: 1100px; } } @media screen and (max-width: 1200px) { .s-footer>.row { max-width: 800px; } .s-footer__block--end { text-align: center; } .s-footer__block--end::before { display: none; } } @media screen and (max-width: 800px) { .s-footer { padding-top: var(--vspace-1); } .ss-go-top a { font-size: 1.6rem; height: 6rem; width: 6rem; line-height: 6rem; } } @media screen and (max-width: 600px) { .ss-go-top { right: 2.4rem; bottom: 2.4rem; } .ss-copyright span { display: block; } .ss-copyright span::after { display: none; } } @media screen and (max-width: 400px) { .s-footer__block { font-size: var(--text-md); line-height: calc(1.125 * var(--space)); } .ss-go-top a { font-size: 1.4rem; height: 4.8rem; width: 4.8rem; line-height: 4.8rem; } .ss-copyright { font-size: 1.4rem; } }
💾 Save Changes
❌ Cancel