@charset "UTF-8";

/*

Style   : MobApp CSS
Version : 1.0
Author  : Surjith S M
URI     : https://surjithctly.in/

Copyright © All rights Reserved 

*/


/*------------------------
[TABLE OF CONTENTS]
    
1. GLOBAL STYLES
2. NAVBAR
3. HERO
4. TABS
5. TESTIMONIALS
6. IMAGE GALLERY
7. PRICING
8. CALL TO ACTION
9. FOOTER

------------------------*/


/* GLOBAL
----------------------*/

body {
    font-family: 'Rubik', sans-serif;
    position: relative;
}

a {
    color: #2f8c5e;
}

a:hover,
a:focus {
    color: white;
}

h1 {
    font-size: 60px;
    font-weight: 300;
    letter-spacing: -1px;
    margin-bottom: 1.5rem;
}

h2 {
    font-size: 45px;
    font-weight: 300;
    color: #633991;
    letter-spacing: -1px;
    margin-bottom: 1rem;
}

h3 {
    color: #3c3c3c;
    font-size: 33px;
    font-weight: 500;
}

h4 {
    font-size: 20px;
    font-weight: 500;
    color: #633991;
}

h5 {
    font-size: 28px;
    font-weight: 300;
    color: #633991;
    margin-bottom: 0.7rem;
}

p {
    color: #959094;
}

p.lead {
    color: #e38cb7;
    margin-bottom: 2rem;
}

.text-primary {
    color: #2f8c5e !important;
}

.light-font {
    font-weight: 300;
}

.btn {
    font-size: 12px;
    font-weight: 400;
    text-transform: uppercase;
    padding: 0.375rem 1.35rem;
    transition: all 0.3s ease;
}


.btn-primary {
    border-radius: 3px;
    background:#3fa775;
    box-shadow: 0px 9px 32px 0px rgba(0, 0, 0, 0.2);
    font-weight: 500;
    padding: 0.6rem 2rem;
    border: 0;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary:not([disabled]):not(.disabled).active,
.btn-primary:not([disabled]):not(.disabled):active,
.show>.btn-primary.dropdown-toggle {
    background: #2f8c5e;
    box-shadow: 0px 9px 32px 0px rgba(0, 0, 0, 0.3);
    color: #FFF;
}

.btn-light {
    border-radius: 3px;
    background: #FFF;
    box-shadow: 0px 9px 32px 0px rgba(0, 0, 0, 0.26);
    font-size: 14px;
    font-weight: 500;
    color: #633991;
    margin: 0.5rem;
    padding: 0.7rem 1.6rem;
    line-height: 1.8;
}

.btn-group-lg>.btn,
.btn-lg {
    padding: 0.8rem 1rem;
    font-size: 15px;
}

.light-bg {
    background-color: #575757;
    position: absolute;
    width: 100%;
}

.section {
    padding: 120px 0;
}

.section-title {
    text-align: center;
    margin-bottom: 3rem;
}

.section-title small {
    color: #998a9b;
}

@media (max-width:767px) {
    h1 {
        font-size: 40px;
    }
    h2 {
        font-size: 30px;
    }
}


/* NAVBAR
----------------------*/

.nav-menu {
        background-color: rgb(74, 13, 143);
    background: -
    moz-linear-gradient(135deg, #1E1E1E, #3c3c3c, #5a5a5a);
    background: -webkit-linear-gradient(135deg, #1E1E1E, #3c3c3c, #5a5a5a);
    background: linear-gradient(135deg, #1E1E1E, #3c3c3c, #5a5a5a);
    -webkit-box-shadow: 0px 5px 23px 0px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0px 5px 23px 0px rgba(0, 0, 0, 0.1);
    box-shadow: 0px 5px 23px 0px rgba(0, 0, 0, 0.1);
    padding: 1rem 0;
    transition: all 0.3s ease;
}

.nav-menu.is-scrolling,
.nav-menu.menu-is-open {
    background-color: rgb(74, 13, 143);
    background: -
    moz-linear-gradient(135deg, #1E1E1E, #3c3c3c, #5a5a5a);
    background: -webkit-linear-gradient(135deg, #1E1E1E, #3c3c3c, #5a5a5a);
    background: linear-gradient(135deg, #1E1E1E, #3c3c3c, #5a5a5a);
    -webkit-box-shadow: 0px 5px 23px 0px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0px 5px 23px 0px rgba(0, 0, 0, 0.1);
    box-shadow: 0px 5px 23px 0px rgba(0, 0, 0, 0.1);
}

.nav-menu.is-scrolling {
    padding: 0;
}

.navbar-nav .nav-link {
    position: relative;
 
}

@media (min-width: 992px) {
    .navbar-expand-lg .navbar-nav .nav-link {
        font-size: 14px;
    }
    .navbar-nav>.nav-item>.nav-link.active:after {
        content: "";
        border-bottom: 2px solid #BEED77;
        left: 1rem;
        right: 1rem;
        bottom: 5px;
        height: 1px;
        position: absolute;
    }
}

@media (max-width:991px) {
    .navbar-nav.is-scrolling {
        padding-bottom: 1rem;
    }
    .navbar-nav .nav-item {
        text-align: center;
    }
   
}


/* HERO
----------------------*/

header {
    padding: 100px 0 0;
    text-align: center;
    color: #FFF;
}

.bg-gradient {
    background-image: -moz-linear-gradient( 135deg, rgba(60, 8, 118, 0.8) 0%, rgba(250, 0, 118, 0.8) 100%);
    background-image: -webkit-linear-gradient( 135deg, rgba(60, 8, 118, 0.8) 0%, rgba(250, 0, 118, 0.8) 100%);
    background-image: -ms-linear-gradient( 135deg, rgba(60, 8, 118, 0.8) 0%, rgba(250, 0, 118, 0.8) 100%);
    background-image: linear-gradient( 135deg, rgba(60, 8, 118, 0.8) 0%, rgba(250, 0, 118, 0.8) 100%);
}

.tagline {
    font-size: 23px;
    font-weight: 300;
    color: #ffb8f6;
    max-width: 800px;
    margin: 0 auto;
}

.img-holder {
    height: 0;
    padding-bottom: 33%;
    overflow: hidden;
}

@media (max-width:1200px) {
    .img-holder {
        padding-bottom: 50%;
    }
}

@media (max-width:767px) {
    .tagline {
        font-size: 17px;
    }
    .img-holder {
        padding-bottom: 100%;
    }
}


/* FEATURES
----------------------*/

.gradient-fill:before {
    color: #fc73b4;
    background: -moz-linear-gradient(top, #9477b4 0%, #fc73b4 100%);
    background: -webkit-linear-gradient(top, #9477b4 0%, #fc73b4 100%);
    background: linear-gradient(to bottom, #9477b4 0%, #fc73b4 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.card.features {
    border: 0;
    border-radius: 3px;
    box-shadow: 0px 5px 7px 0px rgba(0, 0, 0, 0.04);
    transition: all 0.3s ease;
}

@media (max-width:991px) {
    .card.features {
        margin-bottom: 2rem;
    }
    [class^="col-"]:last-child .card.features {
        margin-bottom: 0;
    }
}

.card.features:before {
    content: "";
    position: absolute;
    width: 3px;
    color: #fc73b4;
    background: -moz-linear-gradient(top, #9477b4 0%, #fc73b4 100%);
    background: -webkit-linear-gradient(top, #9477b4 0%, #fc73b4 100%);
    background: linear-gradient(to bottom, #9477b4 0%, #fc73b4 100%);
    top: 0;
    bottom: 0;
    left: 0;
}

.card-text {
    font-size: 14px;
}

.card.features:hover {
    transform: translateY(-3px);
    -moz-box-shadow: 0px 5px 30px 0px rgba(0, 0, 0, 0.08);
    -webkit-box-shadow: 0px 5px 30px 0px rgba(0, 0, 0, 0.08);
    box-shadow: 0px 5px 30px 0px rgba(0, 0, 0, 0.08);
}

.box-icon {
    box-shadow: 0px 0px 43px 0px rgba(0, 0, 0, 0.14);
    padding: 10px;
    width: 70px;
    border-radius: 3px;
    margin-bottom: 1.5rem;
    background-color: #FFF;
}

.circle-icon {
    box-shadow: 0px 9px 32px 0px rgba(0, 0, 0, 0.07);
    padding: 10px;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    margin-bottom: 1.5rem;
    background-color: #FFF;
    color: #2f8c5e;
    font-size: 48px;
    text-align: center;
    line-height: 80px;
    font-weight: 300;
    transition: all 0.3s ease;
}

@media (max-width:992px) {
    .circle-icon {
        width: 70px;
        height: 70px;
        font-size: 28px;
        line-height: 50px;
    }
}

.ui-steps li:hover .circle-icon {
    background:#2f8c5e;
    box-shadow: 0px 9px 32px 0px rgba(0, 0, 0, 0.09);
    color: #FFF;
}

.ui-steps li {
    padding: 15px 0;
}

.ui-steps li:not(:last-child) {
    border-bottom: 1px solid #f8e3f0;
}

.perspective-phone {
    position: relative;
    z-index: -1;
}

@media (min-width:992px) {
    .perspective-phone {
        margin-top: -150px;
    }
}


/*  TABS
----------------------*/

.tab-content {
    border-bottom-right-radius: 3px;
    border-bottom-left-radius: 3px;
    background-color: #FFF;
    box-shadow: 0px 5px 7px 0px rgba(0, 0, 0, 0.04);
    padding: 3rem;
}

@media (max-width:992px) {
    .tab-content {
        padding: 1.5rem;
    }
}

.tab-content p {
    line-height: 1.8;
}

.tab-content h2 {
    margin-bottom: 0.5rem;
}

.nav-tabs {
    border-bottom: 0;
}

.nav-tabs .nav-item .nav-link,
.nav-tabs .nav-link:focus,
.nav-tabs .nav-link:hover {
    padding: 1rem 1rem;
    border-color: #faf6fb #faf6fb #FFF;
    font-size: 19px;
    color: #b5a4c8;
    background: #f5eff7;
}

.nav-tabs .nav-link.active {
    background: #FFF;
    border-top-width: 3px;
    border-color: #ce75b4 #faf6fb #FFF;
    color: #633991;
}


/*  TESTIMONIALS
----------------------*/

.owl-carousel .owl-item img.client-img {
    width: 110px;
    margin: 30px auto;
    border-radius: 50%;
    box-shadow: 0px 9px 32px 0px rgba(0, 0, 0, 0.07);
}

.testimonials-single {
    text-align: center;
    max-width: 80%;
    margin: 0 auto;
}

.blockquote {
    color: #7a767a;
    font-weight: 300;
}

.owl-next.disabled,
.owl-prev.disabled {
    opacity: 0.5;
}

.owl-prev,
.owl-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.owl-prev {
    left: 0;
}

.owl-next {
    right: 0;
}

.owl-theme .owl-nav.disabled+.owl-dots {
    margin-top: 60px;
}

.owl-theme .owl-dots .owl-dot span {
    background: #e7d9eb;
    width: 35px;
    height: 8px;
    border-radius: 10px;
    transition: all 0.3s ease-in;
}

.owl-theme .owl-dots .owl-dot:hover span {
    background: #ff487e;
}

.owl-theme .owl-dots .owl-dot.active span {
    background: #ff487e;
    box-shadow: 0px 9px 32px 0px rgba(0, 0, 0, 0.07);
}


/*  IMAGE GALLERY
----------------------*/

.img-gallery .owl-item {
    box-shadow: 0px 9px 32px 0px rgba(0, 0, 0, 0.07);
    transform: scale(0.8);
    transition: all 0.3s ease-in;
}

.img-gallery .owl-item.center {
    transform: scale(1);
}


/*  PRICING
----------------------*/

@media (max-width:992px) {
    .card-deck {
        -ms-flex-direction: column;
        flex-direction: column;
    }
    .card-deck .card {
        margin-bottom: 15px;
    }
}

.card.pricing {
    border: 1px solid #f1eef1;
}

.card.pricing.popular {
    border-top-width: 3px;
    border-color: #2f8c5e; #faf6fb #FFF;
    box-shadow: 0px 12px 59px 0px rgba(36, 7, 31, 0.11);
}

.card.pricing .card-head {
    text-align: center;
    padding: 40px 0 20px;
}

.card.pricing .card-head .price {
    display: block;
    font-size: 45px;
    font-weight: 300;

}

.card.pricing .card-head .price sub {
    bottom: 0;
    font-size: 55%;
}

.card.pricing .list-group-item {
    border: 0;
    text-align: center;
    color: #959094;
    padding: 8px 1.25rem;
}

.card.pricing .list-group-item del {
    color: #d9d3d8;
}

.card.pricing .card-body {
    padding: 1.75rem;
}


/*  CALL TO ACTION
----------------------*/

.call-to-action {
    text-align: center;
    color: #FFF;
    margin: 3rem 0;
}

.call-to-action .box-icon {
    margin-left: auto;
    margin-right: auto;
    border-radius: 5px;
    transform: scale(0.85);
    margin-bottom: 2.5rem;
}

.call-to-action h2 {
    color: #FFF;
}

.call-to-action .tagline {
    font-size: 16px;
    font-weight: 300;
    color: #ffb8f6;
    max-width: 650px;
    margin: 0 auto;
}

.btn-light img {
    margin-right: 0.4rem;
    vertical-align: text-bottom;
}


/*  FOOTER
----------------------*/

.social-icons {
    text-align: right;
}

.social-icons a {
    background-color: #FFF;
    box-shadow: 0px 0px 21px 0px rgba(0, 0, 0, 0.05);
    padding: 10px;
    display: inline-block;
    text-align: center;
    margin: 0 0.3rem;
    border-radius: 5px;
    color: #f4c9e2;
    transition: all 0.3s ease;
}

.social-icons a:hover {
    text-decoration: none;
    color: #e38cb7;
}

@media (max-width:991px) {
    .social-icons {
        text-align: center;
        margin-top: 2rem;
    }
}

/* ====== ZÁKLADNÍ GRID ====== */
.sablony-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(280px,1fr));
  gap:16px;
}

/* ====== KARTA – „OPOTŘEBOVANÝ“ LOOK ====== */
.plan-card{
  position:relative;
  padding:16px 16px 56px 16px;
  background: #414141;                 /* temná „guma/ocel“ */
  color:#e7ecef;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  box-shadow:0 12px 28px rgba(0,0,0,.35), inset 0 0 0 1px rgba(255,255,255,.03);
  overflow:hidden;
  isolation:isolate;                   /* pro správné mix-blend efekty */
}
.plan-card{
  -webkit-mask: none !important;
  mask: none !important;
}
@supports ((-webkit-mask: radial-gradient(#000,#000)) or (mask: radial-gradient(#000,#000))) {
  .plan-card{
    -webkit-mask:
      radial-gradient(18px 18px at 0 0,      transparent 0 16px, #000 17px),
      radial-gradient(18px 18px at 100% 0,   transparent 0 16px, #000 17px),
      radial-gradient(18px 18px at 100% 100%,transparent 0 16px, #000 17px),
      radial-gradient(18px 18px at 0 100%,   transparent 0 16px, #000 17px);
    -webkit-mask-composite:destination-out, destination-over, destination-over, source-over;
            mask-composite:exclude;
  }
}
/* lehce „otrhané“ okraje (CSS mask) */
.plan-card::before{
  content:"";
  position:absolute; inset:0;
  pointer-events:none;
  /* zrnko + jemné škrábance – čistě CSS */
  background:
    repeating-linear-gradient(  8deg, rgba(255,255,255,.02) 0 2px, transparent 2px 5px),
    repeating-linear-gradient( -8deg, rgba(0,0,0,.12) 0 3px, transparent 3px 7px);
  mix-blend-mode:overlay;
  opacity:.55;
}

/* „ošoupané“ rohy (mask-image trik) */
.plan-card{
  -webkit-mask:
    radial-gradient(18px 18px at 0 0,      transparent 0 16px, #000 17px),
    radial-gradient(18px 18px at 100% 0,   transparent 0 16px, #000 17px),
    radial-gradient(18px 18px at 100% 100%,transparent 0 16px, #000 17px),
    radial-gradient(18px 18px at 0 100%,   transparent 0 16px, #000 17px);
  -webkit-mask-composite:destination-out, destination-over, destination-over, source-over;
  mask-composite:exclude;
}

/* horní „přilepený“ stín jako papír na betonu */
.plan-card::after{
  content:"";
  position:absolute; left:0; right:0; top:0;
  height:28px;
  background:linear-gradient(180deg, rgba(0,0,0,.35), transparent);
  pointer-events:none;
  opacity:.65;
}

/* ====== BADGE ====== */
.badge{
  position:absolute; left:12px; top:12px;
  font-size:12px; letter-spacing:.08em; text-transform:uppercase;
  padding:4px 8px;
  border-radius:8px;
  font-weight:500;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.4), 0 2px 8px rgba(0,0,0,.35);
}

.badge-free{
  color:#d7dde0;
  background:linear-gradient(180deg, #3a3f45, #2b2f34);
  text-shadow:0 1px 0 rgba(0,0,0,.35);
}

.badge-premium{
  color:white;
  background:linear-gradient(180deg, #c4a365, #a8833e); /* matná mosaz/bronze */
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.14), 0 2px 10px rgba(0,0,0,.5);
}

/* název + popis */
.plan-title{
  margin:40px 8px 8px 8px;
  font-size:20px; line-height:1.1; font-weight:800;
  letter-spacing:-0.02em;
  color:#f2f5f7;
  text-transform:uppercase;
}

.plan-desc{
  margin:0 8px 12px 8px;
  font-size:14px; line-height:1.45;
  color:#bac2c8;
}

/* metadata řádek */
.plan-meta{
  display:flex; flex-wrap:wrap; gap:10px 14px;
  margin:8px 8px 12px 8px;
  font-size:13px; color:#d6dadd;
  opacity:.95;
}
.meta-item{
  display:inline-flex; align-items:center; gap:6px;
  white-space:nowrap;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.06);
  padding:4px 8px; border-radius:10px;
}
.meta-item svg{ width:14px; height:14px; opacity:.85; }

/* progress (pokud existuje) */
.progress-wrap{
  margin:6px 8px 14px 8px;
}
.progress-label{
  font-size:12px; color:#96a0a7; margin-bottom:6px;
  letter-spacing:.02em;
}
.progress-bar{
  position:relative; height:8px; border-radius:6px;
  background:#2a2f35; overflow:hidden;
  border:1px solid rgba(255,255,255,.05);
}
.progress-fill{
  height:100%; width:0%;
  background:linear-gradient(90deg, #44b7be, #2a9095);
  box-shadow:0 0 14px rgba(68,183,190,.35) inset;
  transition:width .4s ease;
}

/* CTA oblast */
.card-actions{
  position:absolute; left:16px; right:16px; bottom:12px;
  display:flex; justify-content:flex-end; gap:10px; align-items:center;
}

.btn{
  appearance:none; border:none; cursor:pointer;
  padding:10px 14px; border-radius:12px;
 /* font-weight:500; letter-spacing:.02em;*/
  text-transform:uppercase; font-size:12px;
 /* box-shadow:0 6px 16px rgba(0,0,0,.35), inset 0 0 0 1px rgba(255,255,255,.06);*/
}

.btn:hover {
    background: linear-gradient(180deg, #379c69, #2f8c5e);
    color: white;
}
.btn-load{                    /* FREE / již odemčené */
  background:#02A86A;
  color:white;
}
.btn-locked{                  /* PREMIUM – zamčeno */
  background:linear-gradient(180deg, #2e2e2e, #232323);
  color:#b8b8b8;
}
.btn-locked:hover{
  filter:brightness(1.08);
}
.btn-vip{                     /* PREMIUM – jsem VIP → načíst */
  background:linear-gradient(180deg, #c4a365, #a8833e);
  color:white;
}

/* jemný hover celé karty */
.plan-card:hover{
  transform:translateY(-1px);
  transition:transform .15s ease;
}
.odkaz_normal{
color:white;
text-decoration:none;
}