/*!
 * Copyright (c) 2021 Eclipse Foundation, Inc.
 * 
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License v. 2.0 which is available at
 * http://www.eclipse.org/legal/epl-2.0.
 * 
 * Contributors:
 *   Christopher Guindon <chris.guindon@eclipse-foundation.org>
 *   Eric Poirier <eric.poirier@eclipse-foundation.org>
 * 
 * SPDX-License-Identifier: EPL-2.0
*/.photon{color:#cda034;font-weight:900;letter-spacing:-1px;text-transform:uppercase}@media (max-width:767px){#tool-platforms{border-top:none;margin-top:-50px;padding-top:75px}}@media (min-width:768px){.jetty-spacing{margin-left:9.7%}}.downloads-container{overflow:hidden}.downloads-container h2{font-size:16px}.downloads-container h2 span.downloads-title{border:1px solid #bdbdbd;color:#545454;padding:6px 30px;position:relative}.downloads-header .eclipsefdn-promo-content img{margin:0}.downloads-header .h1-container{border-left:5px solid #f7941e;margin-bottom:20px;margin-top:30px;padding-left:10px;text-align:left}@media (min-width:768px){.downloads-header .h1-container{margin-top:60px}}@media (min-width:992px){.downloads-header .h1-container{margin-top:30px}}.downloads-content-padding{padding-bottom:0;padding-top:0}@media (min-width:768px){.downloads-content-padding{padding-bottom:20px;padding-top:20px}}.downloads-section-all-projects{text-align:center}.downloads-section{background-color:#f9f9f9;border-top:1px solid #adadad;padding:30px 0 0;text-align:center}@media (min-width:768px){.downloads-section{padding:30px 0}}@media (max-width:767px){.downloads-section:first-child{border-top:none}}.downloads-logo{display:flex;height:50px;margin:40px auto 15px;width:160px}.downloads-logo img{margin:0 auto;max-height:auto;max-width:100%}.downloads-items{margin-bottom:40px;padding:30px 15px;position:relative}@media (min-width:768px){.downloads-items{margin-bottom:20px}}.downloads-items .small{font-size:12px}.downloads-items .downloads-items-hover-box{background-color:hsla(0,0%,96%,.95);border-radius:300px;box-shadow:0 0 4px 1px #ccc;height:230px;left:0;opacity:0;padding:25px;position:absolute;top:-20px;transition:visibility 0s,opacity .2s ease-in-out;-o-transition:visibility 0s,opacity .2s ease-in-out;-ms-transition:visibility 0s,opacity .2s ease-in-out;-moz-transition:visibility 0s,opacity .2s ease-in-out;-webkit-transition:visibility 0s,opacity .2s ease-in-out;visibility:hidden;width:230px;z-index:777}@media (min-width:992px){.downloads-items:hover .downloads-items-hover-box{opacity:1;transition:visibility 0s,opacity .2s ease-in-out;-o-transition:visibility 0s,opacity .2s ease-in-out;-ms-transition:visibility 0s,opacity .2s ease-in-out;-moz-transition:visibility 0s,opacity .2s ease-in-out;-webkit-transition:visibility 0s,opacity .2s ease-in-out;visibility:visible}}.downloads-items-close{cursor:pointer}.downloads-items-hover-box-text{font-size:.8em}.downloads-items-hover-box-links{font-size:.8em;margin:0 0 5px}.downloads-items-hover-box-links a{color:#8b82b0;text-transform:uppercase}.downloads-items-header{font-size:18px;font-weight:700;margin-top:5px}.downloads-items-header:after{border-bottom:2px solid;content:"";display:block;height:3px;margin:0 auto;position:relative;top:5px;width:50px}@media (max-width:1200px){.downloads-items-header{cursor:pointer}}.downloads-menu-container{height:46px;width:100%}.downloads-menu{font-size:14px;width:100%;z-index:999}.downloads-menu ul{line-height:1;margin-bottom:0}.downloads-menu ul li{line-height:1;padding:16px 15px}.downloads-menu ul li.active,.downloads-menu ul li:hover{background-color:rgba(0,0,0,.1)}.downloads-menu a,.downloads-menu a:hover{color:#6f6f6f;text-decoration:none}.downloads-bar-ad{background-color:#3f7b96;border-bottom:1px solid #ddd;color:#fff}.downloads-bar-ad p{color:#fff;font-weight:300;margin:0;padding:15px 0}@media (max-width:991px){.downloads-bar-ad p{padding:15px 0 5px;text-align:center}}@media (min-width:1200px){.downloads-bar-ad p{font-size:16px}}.downloads-bar-ad .btn{margin-top:8px;z-index:999}@media (min-width:992px){.downloads-bar-ad .btn{position:absolute}}@media (max-width:991px){.downloads-bar-ad .btn{margin-bottom:15px}}.downloads-bar-ad-white-shape{background-position:100% 0;background-repeat:no-repeat;padding-right:0}.downloads-bar-ad-white-content{position:relative;text-align:center}@media (min-width:1200px){.downloads-bar-ad-white-content{padding-left:0}}@media (min-width:992px){.downloads-bar-ad-white-content{text-align:left}}.grey-link{color:#9692a8;font-weight:300}.downloads-installer{margin-bottom:10px;position:relative}@media (max-width:991px){.downloads-installer{padding-bottom:20px}}@media (min-width:992px){.downloads-installer:after{border-right:2px dotted #e0e0e0;content:"";height:170px;position:absolute;right:0;top:60px;width:3px}}@media (min-width:992px) and (min-width:1200px){.downloads-installer:after{right:45px}}.downloads-all-projects-items{padding:30px 15px 0}@media (min-width:768px){.featured-ad,.featured-story-block{min-height:270px}}.col-lg-10th,.col-lg-5th,.col-md-10th,.col-md-5th,.col-sm-10th,.col-sm-5th,.col-xs-10th,.col-xs-5th{min-height:1px;padding-left:10px;padding-right:10px;position:relative}.col-xs-10th,.col-xs-5th{float:left;width:20%}@media (min-width:992px){.jetty-margin{margin-left:9.7%}}@media (min-width:768px){.col-sm-5th{float:left;width:20%}.col-sm-10th{float:left;width:40%}}@media (min-width:992px){.col-md-5th{float:left;width:20%}.col-md-10th{float:left;width:40%}}@media (min-width:1200px){.col-lg-5th{float:left;width:20%}.col-lg-10th{float:left;width:40%}}.eclipse-installer{background-image:url(../images/vendor/eclipsefdn-solstice-eclipse_org/downloads/downloads-header-bg.jpg?11be9a444b6078af258c9be7656b3e8c);background-position:100% 100%;background-repeat:repeat-x;background-size:cover;box-shadow:inset 0 9px 4px -8px rgba(0,0,0,.3);color:#fff;padding:30px}.eclipse-installer h2{color:#fff;font-weight:100;margin-top:0}.eclipse-installer p{font-size:18px;font-weight:100}@media (min-width:992px){.eclipse-installer .eclipse-installer-download-col{border-left:1px solid #fff;text-align:center}}.eclipse-installer a:link{color:#f7941e}.eclipse-installer .eclipse-installer-download-links a{padding:0 2px}.eclipse-installer .eclipse-installer-download-links .fa{font-size:19px}.eclipse-installer-alert{background-color:#404040;border-bottom:1px solid #f7941e;color:#fff;font-size:17px;font-weight:400;padding:10px 25px}.eclipse-installer-alert p{color:#fff;margin-bottom:0}.downloads-eclipse-installer-alert{background-color:#3e4d78;color:#fff;font-size:12px;font-weight:400;margin-bottom:25px;padding:10px;position:relative}.downloads-eclipse-installer-alert p{color:#fff;margin-bottom:0}.downloads-eclipse-installer-alert:after{border-left:15px solid transparent;border-right:15px solid transparent;border-top:10px solid #3e4d78;bottom:-10px;content:"";height:0;left:0;margin-left:auto;margin-right:auto;position:absolute;right:0;width:0}@media (max-width:991px){.downloads-eclipse-installer-alert{margin-top:20px}}.featured-download{padding:4rem 8rem;text-align:center}.featured-download-logo{margin:2rem 0}.featured-download-logo img{width:8rem}.featured-download-other-links{margin:2rem}.featured-download .btn-neutral,.featured-download .btn-neutral:link,.featured-download .btn-neutral:visited{background-color:#fff;border-color:#fff}.featured-download .btn-neutral:active,.featured-download .btn-neutral:hover{background-color:#aaa;border-color:#aaa}.downloads-header .eclipsefdn-promo-content img{margin:0 auto}
