@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@600;800&family=Space+Grotesk:wght@400;500;700&display=swap');

@font-face {
font-family: 'Ethnocentric';
src: url('fonts/ethnocentric.otf') format('opentype');
font-display: swap;
}
@font-face {
font-family: 'Planet Kosmos';
src: url('fonts/planetkosmos.ttf') format('truetype');
font-display: swap;
}

* {
box-sizing: border-box;
}
body {
min-height: 100vh;
display: flex;
flex-direction: column;
background-color: #120a1d;
background-image: linear-gradient(#1b0f2c, #120a1d 35%, #120a1d 70%, #1c0f16);
color: #eee6f5;
font-family: 'Space Grotesk', 'Arial', sans-serif;
}
main {
flex: 1;
}
h1, h2 {
font-family: 'Ethnocentric', 'Orbitron', sans-serif;
color: #f2e9fa;
letter-spacing: 1px;
line-height: 1.3;
}
h1 {
font-size: 1.6rem;
margin-bottom: 16px;
}
h2 {
font-size: 1.25rem;
margin-bottom: 20px;
}
h3 {
font-size: 1.15rem;
font-weight: 700;
color: #e0823d;
}
p, li {
line-height: 1.6;
}
.lead {
color: #c9bbd9;
}
a {
color: #e0823d;
}
a:hover {
color: #f0a466;
}
.section_space {
padding-top: 40px;
padding-bottom: 40px;
}
.framed {
border: 3px solid transparent;
background-image: linear-gradient(135deg, #8a55c2, #e0823d);
background-origin: border-box;
}
.gradient_button {
display: inline-block;
margin: 10px 10px 0 0;
padding: 10px 24px;
border: 2px solid transparent;
border-radius: 30px;
background: linear-gradient(#1d1230, #1d1230) padding-box, linear-gradient(135deg, #8a55c2, #e0823d) border-box;
color: #eee6f5;
font-weight: 700;
text-decoration: none;
}
.gradient_button:hover {
background: linear-gradient(135deg, #5e2b8c, #c4581f) padding-box, linear-gradient(135deg, #8a55c2, #e0823d) border-box;
color: white;
}
#main_nav {
background-color: #120a1d;
border-bottom: 2px solid #5e2b8c;
border-image: linear-gradient(90deg, #5e2b8c, #c4581f) 1;
}
#brand {
font-family: 'Planet Kosmos', 'Orbitron', sans-serif;
font-size: 2.2rem;
line-height: 1;
color: #f2e9fa;
}
#main_nav .nav-link {
color: #c9bbd9;
font-weight: 500;
}
#main_nav .nav-link:hover, #main_nav .nav-link.active {
color: #e0823d;
}
#main_nav .navbar-toggler {
border-color: #5e2b8c;
}
#hero, #plugin_hero {
position: relative;
}
#hero_img, #plugin_hero_img {
display: block;
width: 100%;
height: 460px;
object-fit: cover;
}
#hero_overlay, #plugin_overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
display: flex;
align-items: center;
background-image: linear-gradient(90deg, rgba(18, 10, 29, 0.94), rgba(52, 22, 78, 0.7) 60%, rgba(196, 88, 31, 0.3));
}
#hero h1, #plugin_hero h1 {
font-size: 1.8rem;
}
#hero .lead, #plugin_hero .lead {
max-width: 620px;
color: #eee6f5;
}
.synth_card {
background-color: #1d1230;
border: 1px solid #34224d;
border-radius: 14px;
overflow: hidden;
}
.synth_card .list-group {
--bs-list-group-bg: #1d1230;
--bs-list-group-color: #c9bbd9;
--bs-list-group-border-color: #34224d;
}
.synth_card .card-img-top {
height: 200px;
object-fit: cover;
}
.level_badge {
margin-bottom: 10px;
background-image: linear-gradient(135deg, #5e2b8c, #c4581f);
font-weight: 500;
}
#stats {
margin: 40px 0;
background-image: linear-gradient(135deg, #2a1342, #3b1a2a);
border-top: 1px solid #4a2a6b;
border-bottom: 1px solid #4a2a6b;
}
.stat_number {
margin-bottom: 4px;
font-family: 'Ethnocentric', 'Orbitron', sans-serif;
font-size: 1.7rem;
color: #e0823d;
}
.stat_label {
margin-bottom: 0;
color: #c9bbd9;
}
#iconic_carousel img {
height: 240px;
object-fit: cover;
}
#iconic_carousel .carousel-caption {
padding: 12px 16px;
border-radius: 12px;
background-color: rgba(18, 10, 29, 0.82);
}
#iconic_carousel .carousel-caption h3 {
margin-bottom: 4px;
}
#call_out {
padding: 40px 20px;
border: 2px solid transparent;
border-radius: 16px;
background: linear-gradient(#1d1230, #1d1230) padding-box, linear-gradient(135deg, #8a55c2, #e0823d) border-box;
}
#timeline {
position: relative;
margin: 0 0 0 12px;
padding: 0;
list-style: none;
border-left: 3px solid #8a55c2;
border-image: linear-gradient(#8a55c2, #e0823d) 1;
}
.timeline_item {
position: relative;
padding: 0 0 32px 28px;
}
.timeline_item::before {
content: "";
position: absolute;
top: 6px;
left: -11px;
width: 19px;
height: 19px;
border: 3px solid #120a1d;
border-radius: 50%;
background-image: linear-gradient(135deg, #8a55c2, #e0823d);
}
.timeline_year {
margin-bottom: 4px;
font-family: 'Ethnocentric', 'Orbitron', sans-serif;
font-size: 1.3rem;
color: #e0823d;
}
.timeline_item h2 {
font-size: 1.05rem;
margin-bottom: 10px;
}
.timeline_item img {
margin-bottom: 12px;
}
.table {
--bs-table-bg: #1d1230;
--bs-table-striped-bg: #261840;
--bs-table-color: #eee6f5;
--bs-table-striped-color: #eee6f5;
--bs-table-border-color: #34224d;
}
caption {
color: #c9bbd9;
}
#tip_box {
padding: 28px;
border: 2px solid transparent;
border-radius: 16px;
background: linear-gradient(#1d1230, #1d1230) padding-box, linear-gradient(135deg, #8a55c2, #e0823d) border-box;
}
.list-group-numbered {
--bs-list-group-bg: #1d1230;
--bs-list-group-color: #eee6f5;
--bs-list-group-border-color: #34224d;
}
.path_step {
height: 100%;
padding: 22px;
border: 2px solid transparent;
border-radius: 14px;
background: linear-gradient(#1d1230, #1d1230) padding-box, linear-gradient(135deg, #8a55c2, #e0823d) border-box;
}
.step_number {
margin-bottom: 6px;
font-family: 'Ethnocentric', 'Orbitron', sans-serif;
font-size: 1.5rem;
color: #8a55c2;
}
.adsr_box {
height: 100%;
padding: 14px;
border-radius: 10px;
background-color: #261840;
}
.adsr_box h3 {
font-size: 1rem;
}
.adsr_box p {
margin-bottom: 0;
font-size: 0.95rem;
}
#first_patch {
max-width: 760px;
margin: 0 auto;
}
#first_patch li {
margin-bottom: 10px;
}
#first_patch li::marker {
color: #e0823d;
font-weight: 700;
}
#faq, #plugin_faq {
--bs-accordion-bg: #1d1230;
--bs-accordion-color: #eee6f5;
--bs-accordion-border-color: #34224d;
--bs-accordion-btn-color: #eee6f5;
--bs-accordion-active-bg: #2a1a42;
--bs-accordion-active-color: #e0823d;
--bs-accordion-btn-focus-box-shadow: 0 0 0 3px rgba(224, 130, 61, 0.35);
}
#faq {
max-width: 860px;
margin: 0 auto;
}
#faq .accordion-button, #plugin_faq .accordion-button {
font-weight: 500;
}
.intro_text {
max-width: 760px;
margin: 0 auto 32px;
color: #c9bbd9;
}
.price {
margin-bottom: 8px;
font-family: 'Ethnocentric', 'Orbitron', sans-serif;
font-size: 1.8rem;
color: #f2e9fa;
}
.price_period {
font-family: 'Space Grotesk', 'Arial', sans-serif;
font-size: 1rem;
color: #c9bbd9;
}
#featured_plan {
border: 2px solid transparent;
background: linear-gradient(#22153a, #22153a) padding-box, linear-gradient(135deg, #8a55c2, #e0823d) border-box;
}
#featured_plan .list-group {
--bs-list-group-bg: #22153a;
}
#contact_form {
padding: 22px;
border: 2px solid transparent;
border-radius: 16px;
background: linear-gradient(#1d1230, #1d1230) padding-box, linear-gradient(135deg, #8a55c2, #e0823d) border-box;
}
#contact_form .form-control, #contact_form .form-select {
background-color: #120a1d;
border-color: #3a2554;
color: #eee6f5;
}
#contact_form .form-control:focus, #contact_form .form-select:focus {
border-color: #e0823d;
box-shadow: 0 0 0 3px rgba(224, 130, 61, 0.3);
}
#contact_form .form-check-input:checked {
background-color: #c4581f;
border-color: #c4581f;
}
#contact_info {
height: 100%;
padding: 22px;
border-radius: 16px;
background-color: #1d1230;
}
#contact_info img {
margin-bottom: 18px;
}
#main_footer {
margin-top: 40px;
padding: 40px 0 24px;
background-color: #0d0715;
border-top: 2px solid #5e2b8c;
border-image: linear-gradient(90deg, #5e2b8c, #c4581f) 1;
color: #c9bbd9;
}
#main_footer a {
color: #c9bbd9;
text-decoration: none;
}
#main_footer a:hover {
color: #e0823d;
}
#foot_brand {
margin-bottom: 8px;
font-family: 'Planet Kosmos', 'Orbitron', sans-serif;
font-size: 2.6rem;
line-height: 1;
color: #f2e9fa;
}
.foot_heading {
margin-bottom: 12px;
font-family: 'Space Grotesk', 'Arial', sans-serif;
font-size: 1rem;
font-weight: 700;
letter-spacing: 2px;
text-transform: uppercase;
color: #e0823d;
}
#copyright {
margin: 24px 0 0;
padding-top: 16px;
border-top: 1px solid #2a1a42;
text-align: center;
font-size: 0.9rem;
}

/* Extra small devices (phones, 600px and down) */
@media only screen and (max-width: 600px) {
    .gradient_button {
    display: block;
    margin: 12px 0 0;
    text-align: center;
    }
    #iconic_carousel .carousel-caption p {
    display: none;
    }
    #iconic_carousel .carousel-caption {
    right: 10%;
    left: 10%;
    bottom: 36px;
    }
    .timeline_item h2 {
    font-size: 0.95rem;
    }
    .table th, .table td {
    white-space: nowrap;
    }
}
/* Small devices (portrait tablets and large phones, 600px and up) */
@media only screen and (min-width: 600px) {
    h1 {
    font-size: 2rem;
    }
    h2 {
    font-size: 1.45rem;
    }
    #hero_img, #plugin_hero_img {
    height: 440px;
    }
    #hero h1, #plugin_hero h1 {
    font-size: 2.2rem;
    }
    #iconic_carousel img {
    height: 340px;
    }
    .synth_card .card-img-top {
    height: 220px;
    }
}
/* Medium devices (landscape tablets, 768px and up) */
@media only screen and (min-width: 768px) {
    .section_space {
    padding-top: 64px;
    padding-bottom: 64px;
    }
    h1 {
    font-size: 2.3rem;
    }
    h2 {
    font-size: 1.65rem;
    }
    #hero_img, #plugin_hero_img {
    height: 520px;
    }
    #hero h1, #plugin_hero h1 {
    font-size: 2.6rem;
    }
    #iconic_carousel img {
    height: 400px;
    }
    .timeline_item img {
    max-width: 70%;
    }
    #contact_form {
    padding: 32px;
    }
}
/* Large devices (laptops/desktops, 992px and up) */
@media only screen and (min-width: 992px) {
    h1 {
    font-size: 2.7rem;
    }
    h2 {
    font-size: 1.9rem;
    }
    #brand {
    font-size: 2.6rem;
    }
    #hero_img, #plugin_hero_img {
    height: 620px;
    }
    #hero h1, #plugin_hero h1 {
    font-size: 3.2rem;
    }
    #iconic_carousel img {
    height: 480px;
    }
    #timeline {
    margin: 0;
    border-left: none;
    }
    #timeline::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: 3px;
    height: 100%;
    background-image: linear-gradient(#8a55c2, #e0823d);
    }
    .timeline_item {
    width: 50%;
    padding: 0 48px 40px 0;
    text-align: right;
    }
    .timeline_item::before {
    left: auto;
    right: -11px;
    }
    .timeline_item:nth-child(even) {
    margin-left: 50%;
    padding: 0 0 40px 48px;
    text-align: left;
    }
    .timeline_item:nth-child(even)::before {
    right: auto;
    left: -8px;
    }
    .timeline_item img {
    max-width: 100%;
    }
    .timeline_item h2 {
    font-size: 1.2rem;
    }
}
/* Extra large devices (large laptops and desktops, 1200px and up) */
@media only screen and (min-width: 1200px) {
    #hero_img, #plugin_hero_img {
    height: 680px;
    }
    #hero h1, #plugin_hero h1 {
    font-size: 3.6rem;
    }
    .lead {
    font-size: 1.3rem;
    }
    #iconic_carousel img {
    height: 540px;
    }
}
