/************************************************************************************/
/* 6KA Softwareentwicklung und Digitalisierung                                      */
/* https://6ka-digital.com                                                          */
/*                                                                                  */
/* webdevelopment.css v1.0.7 - 05.06.2026                                           */
/************************************************************************************/
@layer layout {

    /* content.htm / mietservice */
    /*****************************/
    .ms-home                                        {   padding-top: var(--header-height-large);
                                                        background: var(--primary-white); }

    .ms-hero                                        {   background: var(--primary-grey7);
                                                        border-bottom: 1px solid var(--primary-grey8); }

    .ms-hero__content                              {   width: 100%;
                                                        max-width: none;
                                                        margin: 0;
                                                        display: grid;
                                                        grid-template-columns: 60% 40%;
                                                        align-items: start;
                                                        min-height: auto; }

    .ms-hero__text                                  {   padding: 5rem 4rem 4rem max(4rem, calc((100vw - 1440px) / 2 + 4rem)); }                                                        

    .ms-hero__visual                                {   position: relative;
                                                        display: flex;
                                                        justify-content: center;
                                                        align-items: start;
                                                        background-color: var(--primary-blue3);
                                                        height: 100%;
                                                        min-height: 400px;
                                                        overflow: hidden; }

    .ms-hero__image                                 {   width: auto;
                                                        height: 100%;
                                                        max-height: 100%;
                                                        object-fit: contain;
                                                        display: block; }

    .ms-button                                      {   display: inline-flex;
                                                        align-items: center;
                                                        justify-content: center;
                                                        min-height: 3.25rem;
                                                        padding: .5rem 2rem;
                                                        text-decoration: none; 
                                                        text-align: center;
                                                        font-weight: 400; }

    .ms-button:hover                                {   text-decoration: underline;
                                                        text-underline-offset: 0.4rem; }                                                        

    .ms-button--primary                             {   background: var(--primary-blue3);
                                                        color: var(--primary-white); }

    .ms-button--secondary                           {   border: 1px solid var(--primary-blue3);
                                                        color: var(--primary-blue3);
                                                        background: var(--primary-white); }  

    .ms-packages                                    {   padding: 4rem 0;
                                                        background: var(--primary-white); }

    .ms-packages__content                           {   width: 100%;
                                                        max-width: 1440px;
                                                        margin: 0 auto;
                                                        padding: 0 4rem; }

    .ms-packages__grid                              {   display: grid;
                                                        grid-template-columns: repeat(3, minmax(0, 1fr));
                                                        gap: 2rem;
                                                        margin-top: 3rem; }

    .ms-package-includes                            {   padding: 4rem 0;
                                                        background: var(--primary-grey7); }

    .ms-package-includes__contentwrap               {   width: 100%;
                                                        max-width: 1440px;
                                                        margin: 0 auto;
                                                        padding: 0 4rem; }

    .ms-package-includes__grid                      {   display: flex;
                                                        flex-wrap: wrap;
                                                        gap: 2rem;
                                                        margin-top: 3rem; }
                                                        
    .ms-package-modules                             {   padding: 4rem 0;
                                                        background: var(--primary-white); }

    .ms-package-modules__contentwrap                {   width: 100%;
                                                        max-width: 1440px;
                                                        margin: 0 auto;
                                                        padding: 0 4rem; }

    .ms-package-modules__grid                       {   display: flex;
                                                        flex-wrap: wrap;
                                                        gap: 2rem;
                                                        margin-top: 3rem; }                                                        
                                                            
    .ms-package-excludes                            {   padding: 4rem 0;
                                                        background: var(--primary-grey7); }

    .ms-package-excludes__contentwrap               {   width: 100%;
                                                        max-width: 1440px;
                                                        margin: 0 auto;
                                                        padding: 0 4rem; }

    .ms-package-excludes__grid                      {   display: flex;
                                                        flex-wrap: wrap;
                                                        gap: 2rem;
                                                        margin-top: 3rem; }    

    @media (max-width: 1199.98px)                   {

        .ms-hero                                    {   background: var(--primary-grey7); }

        .ms-hero__content                           {   grid-template-columns: 1fr; }

        .ms-packages__grid                          {   grid-template-columns: 1fr; }
    }

    @media (max-width: 900px)                       {

        .ms-hero                                    {   background: var(--primary-grey7); }

        .ms-hero__content                           {   grid-template-columns: 1fr; }

        .ms-hero__text                              {   padding: 5rem 3rem 3rem 3rem; }
        
        /* Box bricht in die natürliche Höhe auf, blaues Fundament verschwindet */
        .ms-hero__visual                            {   height: auto; 
                                                        min-height: 0;
                                                        background-color: transparent; 
                                                        padding: 2rem 0 0 0; }

        /* Querformat nutzt jetzt die volle Breite des Smartphone-Bildschirms */
        .ms-hero__image                             {   width: 100%; 
                                                        height: auto;
                                                        max-height: none; }

        .ms-packages__content                       {   padding: 0 3rem; }

        .ms-package-includes__contentwrap           {   padding: 0 3rem; }
                                                        
    }
}

@layer components {

    .ms-kicker-card, 
    .ms-kicker                                      {   display: flex;
                                                        align-items: center;
                                                        gap: 1rem;
                                                        color: var(--primary-green3);
                                                        font-weight: 500;
                                                        font-size: 1.1rem;
                                                        letter-spacing: 0.02em; /* Dezentere Laufweite für normale Groß-/Kleinschreibung */ }                                                        

    .ms-kicker-card                                 {   font-size: 1.2rem; }   

    .ms-kicker-card::before,
    .ms-kicker::before                              {   content: "";
                                                        width: 3rem;
                                                        height: 3px;
                                                        background-color: var(--primary-green3);
                                                        flex-shrink: 0; }

    .ms-title                                       {   font-size: clamp(1.4rem, 2vw + 0.5rem, 2rem);
                                                        line-height: 1.25;
                                                        color: var(--primary-blue3);
                                                        margin: 2rem 0 3rem 0; }

    .ms-intro                                       {   max-width: 38rem;
                                                        font-size: 1.15rem;
                                                        font-weight: 500;
                                                        line-height: 1.7; } 
                                                        
    .ms-intro p                                     {   margin: 0;
                                                        padding: 0; 
                                                        line-height: 2; }                                                        

    .ms-normtext                                    {   max-width: 38rem;
                                                        font-size: 1.15rem;
                                                        font-weight: 400;
                                                        line-height: 1.7; } 
                                                        
    .ms-normtext ul                                 {   margin: 0;
                                                        padding: .5rem 0 0 2rem; }  
                                                        
    .ms-normtext ul li                              {   padding: .1rem 0; 
                                                        font-weight: 500; 
                                                        color: var(--primary-black); } 
                                                        
    .ms-normtext ul li::marker                      {   content: "\25A2\00A0\00A0  ";
                                                        color: var(--primary-blue3); 
                                                        padding-right: .3rem; 
                                                        font-weight: 500; }      

    .ms-actions                                     {   display: flex;
                                                        gap: 1.5rem;
                                                        margin-top: 2.5rem; }

    .ms-highlight                                   {   color: var(--primary-black); 
                                                        padding: 1rem; 
                                                        background-color: var(--primary-green4);
                                                        line-height: 1.25;
                                                        text-align: center; }

    .ms-highlight:hover                             {   background-color: var(--primary-green); }                                                        

    .ms-section-title-second, 
    .ms-section-title                               {   max-width: 56rem;
                                                        font-size: clamp(1.4rem, 2vw + 0.5rem, 2rem);
                                                        line-height: 1.25;
                                                        color: var(--primary-blue3);
                                                        margin: 1.5rem 0 0 0; }

    .ms-price-note,
    .ms-section-title-second                        {   font-size: clamp(1rem, 2vw + 0.5rem, 1.2rem);
                                                        color: var(--primary-black);
                                                        font-weight: 400; 
                                                        margin-top: 3rem; 
                                                        margin-bottom: 5rem; }                                                        

    .ms-package-card                                {   border: 1px solid var(--primary-grey8);
                                                        background: var(--primary-white);
                                                        /*box-shadow: 0 0.5rem 1.5rem var(--primary-box-shadow);*/ }

    .ms-package-card__summary                       {   padding: 2rem 2rem; 
                                                        color: var(--primary-black); }

    .ms-package-card__summary::-webkit-details-marker { display: none; }

    .ms-package-card__name                          {   display: block;
                                                        font-size: 1rem;
                                                        font-weight: 700; }

    .ms-package-card__name ul                       {   margin: 0;
                                                        padding: .5rem 0 0 1.6rem; }

    .ms-package-card__name ul li                    {   padding: .5rem 0; 
                                                        font-weight: 500; 
                                                        color: var(--primary-black); 
                                                        border-bottom: 1px solid var(--primary-grey8); } 
                                                        
    .ms-package-card__name ul li::marker            {   content: "\2713\00A0\00A0  ";
                                                        color: var(--primary-blue3); 
                                                        padding-right: .3rem; 
                                                        font-weight: 500; }                                                        

    .ms-package-card__paket_s,
    .ms-package-card__paket_m,
    .ms-package-card__paket_l                       {   display: flex;
                                                        align-items: center;
                                                        justify-content: center;
                                                        font-weight: 700;
                                                        font-size: 1.4rem;
                                                        width: 2.5rem;
                                                        height: 2.5rem; 
                                                        color: var(--primary-white);                                                        
                                                        border-radius: 50%;                                                         
                                                        padding: .5rem; }

    .ms-package-card__paket_s                       {   background-color: var(--primary-green3);
                                                        border: 2px solid var(--primary-green3);  }

    .ms-package-card__paket_m                       {   background-color: var(--primary-blue); 
                                                        border: 2px solid var(--primary-blue); }

    .ms-package-card__paket_l                       {   background-color: var(--primary-grey3); 
                                                        border: 2px solid var(--primary-grey3); }

    .ms-package-card__headline                      {   padding-left: 4rem; }

    .ms-package-card__headline .ms-kicker-card      {   margin-left: -4rem; }

    .ms-package-card__paketPriceBox                 {   margin-top: -.25rem;
                                                        margin-bottom: 2rem;
                                                        text-align: left; } 
                                                        
    .ms-package-card__paketPrice                    {   font-size: 1.2rem;
                                                        font-weight: 700;
                                                        color: var(--primary-green3); } 

    .ms-package-card__paketMonth                    {   font-size: 1rem;
                                                        font-weight: 700;
                                                        color: var(--primary-green3); }                                                        

    .ms-package-card__title_primary                 {   font-weight: 700; 
                                                        padding: 0 0 .5rem 0;
                                                        font-size: 1.5rem;
                                                        color: var(--primary-blue); }

    .ms-package-card__title_primary p               {   line-height: 1.4; 
                                                        margin: 0;
                                                        padding: .5 0 0 0; 
                                                        font-size: 1rem; 
                                                        font-weight: 500; }                                                        

    .ms-package-card__title_secondary               {   font-weight: 500; 
                                                        padding: .5rem 0 1.5rem 0;
                                                        font-size: 1rem;
                                                        color: var(--primary-black); }                                                                                                            

    .ms-package-card__body                          {   padding: 0 2rem 2rem 2rem;
                                                        color: var(--primary-grey2); }

    .ms-package-card__body p                        {   margin: 0; }        
    
    

    .ms-package-includes__box                       {   flex: 1 1 calc((100% - 4rem) / 3);
                                                        min-width: 0;
                                                        border: 1px solid var(--primary-grey8);
                                                        background: var(--primary-white);
                                                        padding: 0 2rem 2rem 2rem; }

    .ms-package-includes__box p                     {   margin: 0 0 1rem 0; }

    .ms-package-includes__box p:last-child          {   margin-bottom: 0; }

    .ms-package-includes__box strong                {   color: var(--primary-blue);
                                                        font-weight: 700;}

    .ms-package-modules__box                        {   position: relative;
                                                        flex: 1 1 calc((100% - 4rem) / 3);
                                                        min-width: 0;
                                                        border: 1px solid var(--primary-grey8);
                                                        background: var(--primary-white);
                                                        padding: 2rem 2rem 2rem 5.25rem; }

    .ms-package-modules__box::before                {   content: "";
                                                        position: absolute;
                                                        top: 2rem;
                                                        left: 1rem;
                                                        width: 3rem;
                                                        height: 3rem; 
                                                        background-repeat: no-repeat;
                                                        background-position: center;
                                                        background-size: contain;}

    .ms-package-modules__box p                      {   margin: 0;
                                                        line-height: 1.7; }

    .ms-package-modules__box--calendar::before      {   background-image: url("icons/symb_Circle_calendar5B6F1A.svg"); }

    .ms-package-modules__box--language::before      {   background-image: url("icons/symb_Circle_language5B6F1A.svg"); }

    .ms-package-modules__box--login::before         {   background-image: url("icons/symb_Circle_member5B6F1A.svg"); }

    .ms-package-modules__box--gallery::before       {   background-image: url("icons/symb_Circle_gallery5B6F1A.svg"); }

    .ms-package-modules__box--blog::before          {   background-image: url("icons/symb_Circle_blog5B6F1A.svg"); }                                                        

    .ms-package-excludes__box                       {   flex: 1 1 calc((100% - 4rem) / 3);
                                                        min-width: 0;
                                                        border: 1px solid var(--primary-grey8);
                                                        background: var(--primary-white);
                                                        padding: 0 2rem 2rem 2rem; }

    .ms-package-excludes__box p                     {   margin: 0 0 1rem 0; }

    .ms-package-excludes__box p:last-child          {   margin-bottom: 0; }

    .ms-package-excludes__box strong                {   color: var(--primary-blue);
                                                        font-weight: 700; }                                                        

    @media (max-width: 1199.98px)                   {

        .ms-package-includes__box                   {   flex-basis: calc((100% - 2rem) / 2); }

        .ms-package-excludes__box                   {   flex-basis: calc((100% - 2rem) / 2); }

        .ms-package-modules__box                    {   flex-basis: calc((100% - 2rem) / 2); }

        .ms-intro                                   {   max-width: none; }

        .ms-normtext                                {   max-width: none; }
    }

    @media (max-width: 900px) {

        .ms-actions                                 {   flex-direction: column; 
                                                        gap: 1rem; }
    }

    @media (max-width: 767.98px)                    {

        .ms-package-includes__box                   {   flex-basis: 100%; }

        .ms-package-excludes__box                   {   flex-basis: 100%; }

        .ms-package-modules__box                    {   flex-basis: 100%; }
    }    
}