/* BICOM — Odvykání kouření */
/* =========================================================
   BICOM – ODVYKÁNÍ KOUŘENÍ
   PAGE: smk5
   ========================================================= */

.smk5-page{
    width:100%;
    /* overflow:hidden by rušil position:sticky u .smk5-session__intro; clip schová přetečení bez scroll kontejneru */
    overflow:hidden;
    overflow:clip;
    background:var(--bicom-white);
}


/* =========================================================
   01 / INTRO
   ========================================================= */

.smk5-intro{
    width:100%;
    padding:80px 0;
    background:var(--bicom-white);
}

.smk5-intro__grid{
    display:grid;
    grid-template-columns:minmax(0,.92fr) minmax(440px,1.08fr);
    gap:clamp(60px,7vw,110px);
    align-items:center;
}

.smk5-intro__content{
    max-width:650px;
}

.smk5-intro__content .bicom-heading{
    margin:0 0 28px;
}

.smk5-intro__content > .bicom-copy{
    margin:0;
}

.smk5-intro__content > .bicom-copy + .bicom-copy{
    margin-top:14px;
}

.smk5-intro__lead{
    margin-top:30px;
    padding:20px 0 20px 24px;
    border-left:3px solid var(--bicom-green);
    color:var(--bicom-navy);
    font-size:19px;
    line-height:1.55;
    font-weight:var(--bicom-weight-bold);
}

.smk5-intro__facts{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:0;
    margin-top:38px;
    border-top:1px solid var(--bicom-line);
    border-bottom:1px solid var(--bicom-line);
}

.smk5-intro__fact{
    padding:24px 22px 24px 0;
}

.smk5-intro__fact + .smk5-intro__fact{
    padding-left:24px;
    border-left:1px solid var(--bicom-line);
}

.smk5-intro__fact strong{
    display:block;
    color:var(--bicom-navy);
    font-size:20px;
    line-height:1.2;
    font-weight:var(--bicom-weight-bold);
    letter-spacing:-.02em;
}

.smk5-intro__fact span{
    display:block;
    margin-top:7px;
    color:var(--bicom-muted);
    font-size:16px;
    line-height:1.45;
    font-weight:var(--bicom-weight-semibold);
}

.smk5-links{
    margin-top:30px;
}

.smk5-links .bicom-link{
    margin-top:0;
}

.smk5-intro__visual{
    position:relative;
    width:100%;
    min-height:580px;
    overflow:hidden;
    background:var(--bicom-surface);
}

.smk5-intro__visual img{
    width:100%;
    height:100%;
    min-height:580px;
    object-fit:cover;
}


/* =========================================================
   02 / PRINCIPLE
   ========================================================= */

.smk5-principle{
    width:100%;
    padding:80px 0;
    background:var(--bicom-dark);
}

.smk5-principle__inner{
    width:min(calc(100% - 80px),1320px);
    margin-inline:auto;
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(300px,.48fr);
    gap:clamp(60px,8vw,120px);
    align-items:center;
}

.smk5-principle__content{
    max-width:700px;
}

.smk5-principle .bicom-kicker{
    color:var(--bicom-green);
}

.smk5-principle .bicom-heading{
    margin:0;
    color:var(--bicom-white);
}

.smk5-principle .bicom-copy{
    margin-top:24px;
    color:var(--bicom-white);
}

.smk5-principle .bicom-link,
.smk5-principle .bicom-link:visited,
.smk5-principle .bicom-link:hover,
.smk5-principle .bicom-link:focus,
.smk5-principle .bicom-link:active{
    color:var(--bicom-white);
}

.smk5-principle__claim{
    padding:36px 0 36px 38px;
    border-left:1px solid rgba(255,255,255,.2);
}

.smk5-principle__claim > strong{
    display:block;
    color:var(--bicom-green);
    font-size:clamp(54px,5vw,76px);
    line-height:.95;
    font-weight:var(--bicom-weight-bold);
    letter-spacing:-.055em;
}

.smk5-principle__claim > span{
    display:block;
    max-width:310px;
    margin-top:18px;
    color:var(--bicom-white);
    font-size:18px;
    line-height:1.5;
    font-weight:var(--bicom-weight-bold);
}

.smk5-principle__claim small{
    display:block;
    max-width:310px;
    margin-top:18px;
    color:rgba(255,255,255,.72);
    font-size:16px;
    line-height:1.55;
    font-weight:var(--bicom-weight-medium);
}


/* =========================================================
   03 / SESSION
   ========================================================= */

.smk5-session{
    width:100%;
    padding:80px 0;
    background:var(--bicom-surface);
}

.smk5-session__layout{
    display:grid;
    grid-template-columns:minmax(300px,.68fr) minmax(0,1.32fr);
    gap:clamp(60px,8vw,120px);
    align-items:start;
}

.smk5-session__intro{
    position:sticky;
    top:120px;
}

.smk5-session__intro .bicom-heading{
    margin:0;
}

.smk5-session__intro .bicom-copy{
    margin-top:24px;
}

.smk5-session__intro-note{
    margin-top:28px;
    padding-top:20px;
    border-top:2px solid var(--bicom-green);
    color:var(--bicom-navy);
    font-size:17px;
    line-height:1.5;
    font-weight:var(--bicom-weight-bold);
}

.smk5-session__steps{
    border-top:1px solid var(--bicom-line);
}

.smk5-session__step{
    display:grid;
    grid-template-columns:70px minmax(0,1fr);
    gap:30px;
    padding:34px 0;
    border-bottom:1px solid var(--bicom-line);
}

.smk5-session__num{
    color:var(--bicom-green);
    font-size:18px;
    line-height:1.2;
    font-weight:var(--bicom-weight-bold);
}

.smk5-session__body > span{
    display:block;
    margin-bottom:9px;
    color:var(--bicom-muted);
    font-size:16px;
    line-height:1.3;
    font-weight:var(--bicom-weight-bold);
    letter-spacing:.05em;
    text-transform:uppercase;
}

.smk5-session__body h3{
    margin:0;
    color:var(--bicom-navy);
    font-size:clamp(25px,2.2vw,32px);
    line-height:1.12;
    font-weight:var(--bicom-weight-bold);
    letter-spacing:-.025em;
}

.smk5-session__body p{
    max-width:650px;
    margin:16px 0 0;
    color:var(--bicom-text);
    font-size:17px;
    line-height:1.65;
}

.smk5-session__detail{
    padding-left:18px;
    border-left:2px solid var(--bicom-green);
    color:var(--bicom-muted) !important;
}


/* =========================================================
   04 / DOCTOR
   ========================================================= */

.smk5-doctor{
    width:100%;
    padding:80px 0;
    background:var(--bicom-white);
}

.smk5-doctor__grid{
    display:grid;
    grid-template-columns:minmax(380px,.88fr) minmax(0,1.12fr);
    gap:clamp(60px,8vw,120px);
    align-items:center;
}

.smk5-doctor__visual{
    width:100%;
}

.smk5-doctor__photo{
    width:100%;
    min-height:500px;
    overflow:hidden;
    background:var(--bicom-surface);
}

.smk5-doctor__photo img{
    width:100%;
    height:100%;
    min-height:500px;
    object-fit:cover;
}

.smk5-doctor__content{
    max-width:650px;
}

.smk5-doctor__content .bicom-heading{
    margin:0;
}

.smk5-doctor__statement{
    margin:30px 0 0;
    color:var(--bicom-text);
    font-size:20px;
    line-height:1.65;
    font-weight:var(--bicom-weight-medium);
}

.smk5-doctor__statement strong{
    color:var(--bicom-navy);
    font-weight:var(--bicom-weight-bold);
}

.smk5-doctor__author{
    display:flex;
    flex-direction:column;
    gap:4px;
    margin-top:30px;
    padding-top:22px;
    border-top:1px solid var(--bicom-line);
}

.smk5-doctor__author strong{
    color:var(--bicom-navy);
    font-size:18px;
    line-height:1.3;
    font-weight:var(--bicom-weight-bold);
}

.smk5-doctor__author span{
    color:var(--bicom-muted);
    font-size:16px;
    line-height:1.4;
    font-weight:var(--bicom-weight-semibold);
}


/* =========================================================
   05 / CALCULATOR
   ========================================================= */

.smk5-calc{
    width:100%;
    padding:80px 0;
    background:var(--bicom-dark);
}

.smk5-calc__head{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(330px,.55fr);
    gap:70px;
    align-items:end;
    margin-bottom:44px;
}

.smk5-calc__head .bicom-heading{
    margin:0;
    color:var(--bicom-white);
}

.smk5-calc__head .bicom-copy{
    margin:0;
    color:var(--bicom-white);
}

.smk5-calc__box{
    background:var(--bicom-white);
}

.smk5-calc__inputs{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:1px;
    background:var(--bicom-line);
    border:1px solid var(--bicom-line);
}

.smk5-calc__field{
    padding:28px;
    background:var(--bicom-white);
}

.smk5-calc__field label{
    display:block;
    margin-bottom:12px;
    color:var(--bicom-navy);
    font-size:16px;
    line-height:1.35;
    font-weight:var(--bicom-weight-bold);
}

.smk5-calc__field input{
    width:100%;
    height:54px;
    padding:0 16px;
    border:1px solid var(--bicom-line);
    border-radius:0;
    outline:0;
    background:var(--bicom-surface-soft);
    color:var(--bicom-navy);
    font-family:inherit;
    font-size:17px;
    line-height:1;
    font-weight:var(--bicom-weight-bold);
    transition:border-color .2s ease,background .2s ease;
}

.smk5-calc__field input::placeholder{
    color:var(--bicom-muted);
    opacity:.8;
}

.smk5-calc__field input:focus{
    border-color:var(--bicom-green);
    background:var(--bicom-white);
}

.smk5-calc__results{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    border-left:1px solid var(--bicom-line);
    border-right:1px solid var(--bicom-line);
    border-bottom:1px solid var(--bicom-line);
}

.smk5-calc__result{
    min-height:150px;
    padding:28px;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.smk5-calc__result + .smk5-calc__result{
    border-left:1px solid var(--bicom-line);
}

.smk5-calc__result strong{
    display:block;
    color:var(--bicom-navy);
    font-size:clamp(27px,2.5vw,36px);
    line-height:1;
    font-weight:var(--bicom-weight-bold);
    letter-spacing:-.035em;
}

.smk5-calc__result span{
    display:block;
    margin-top:10px;
    color:var(--bicom-muted);
    font-size:16px;
    line-height:1.4;
    font-weight:var(--bicom-weight-semibold);
}

.smk5-calc__note{
    max-width:820px;
    margin:20px 0 0;
    color:rgba(255,255,255,.72);
    font-size:16px;
    line-height:1.55;
}


/* =========================================================
   06 / EXPERIENCES
   ========================================================= */

.smk5-voices{
    width:100%;
    padding:80px 0;
    background:var(--bicom-white);
}

.smk5-voices__head{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(320px,.52fr);
    gap:70px;
    align-items:end;
    margin-bottom:48px;
}

.smk5-voices__head .bicom-heading{
    margin:0;
}

.smk5-voices__head .bicom-copy{
    margin:0;
}

.smk5-voices__layout{
    display:grid;
    grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);
    gap:20px;
}

.smk5-voice-main{
    position:relative;
    min-height:410px;
    padding:46px;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    background:var(--bicom-dark);
}

.smk5-voice-main__mark{
    position:absolute;
    top:28px;
    left:38px;
    color:var(--bicom-green);
    font-size:80px;
    line-height:1;
    font-weight:var(--bicom-weight-bold);
}

.smk5-voice-main p{
    max-width:720px;
    margin:0;
    color:var(--bicom-white);
    font-size:clamp(26px,2.7vw,38px);
    line-height:1.27;
    font-weight:var(--bicom-weight-semibold);
    letter-spacing:-.025em;
}

.smk5-voice-main > strong{
    display:block;
    margin-top:28px;
    color:var(--bicom-green);
    font-size:16px;
    line-height:1.4;
    font-weight:var(--bicom-weight-bold);
}

.smk5-voice-side{
    display:grid;
    grid-template-rows:1fr 1fr;
    gap:20px;
}

.smk5-voice-side article{
    padding:34px;
    background:var(--bicom-surface);
}

.smk5-voice-side p{
    margin:0;
    color:var(--bicom-text);
    font-size:17px;
    line-height:1.65;
}

.smk5-voice-side strong{
    display:block;
    margin-top:22px;
    padding-top:18px;
    border-top:1px solid var(--bicom-line);
    color:var(--bicom-navy);
    font-size:16px;
    line-height:1.4;
    font-weight:var(--bicom-weight-bold);
}

.smk5-voices__link{
    margin-top:30px;
}

.smk5-voices__link .bicom-link{
    margin-top:0;
}


/* =========================================================
   07 / NOTE
   ========================================================= */

.smk5-note{
    width:100%;
    padding:0 0 80px;
    background:var(--bicom-white);
}

.smk5-note__inner{
    position:relative;
    padding:28px 34px 28px 38px;
    background:var(--bicom-surface);
    border-left:4px solid var(--bicom-green);
}

.smk5-note__inner strong{
    display:block;
    margin:0 0 8px;
    color:var(--bicom-navy);
    font-size:18px;
    line-height:1.3;
    font-weight:var(--bicom-weight-bold);
}

.smk5-note__inner p{
    max-width:950px;
    margin:0;
    color:var(--bicom-text);
    font-size:16px;
    line-height:1.65;
}


/* =========================================================
   LINK PROTECTION
   ========================================================= */

.smk5-page .bicom-link,
.smk5-page .bicom-link:visited{
    text-decoration:none;
}

.smk5-page .bicom-link:not(.bicom-link--light),
.smk5-page .bicom-link:not(.bicom-link--light):visited,
.smk5-page .bicom-link:not(.bicom-link--light):hover,
.smk5-page .bicom-link:not(.bicom-link--light):focus,
.smk5-page .bicom-link:not(.bicom-link--light):active{
    color:var(--bicom-navy);
}

.smk5-page .bicom-link--light,
.smk5-page .bicom-link--light:visited,
.smk5-page .bicom-link--light:hover,
.smk5-page .bicom-link--light:focus,
.smk5-page .bicom-link--light:active{
    color:var(--bicom-white);
}


/* =========================================================
   COMPACT DESKTOP
   ========================================================= */

@media(min-width:1025px) and (max-height:960px){

    .smk5-intro,
    .smk5-principle,
    .smk5-session,
    .smk5-doctor,
    .smk5-calc,
    .smk5-voices{
        padding-top:64px;
        padding-bottom:64px;
    }

    .smk5-note{
        padding-bottom:64px;
    }

    .smk5-intro__visual,
    .smk5-intro__visual img{
        min-height:490px;
    }

    .smk5-doctor__photo,
    .smk5-doctor__photo img{
        min-height:440px;
    }

}


/* =========================================================
   TABLET
   ========================================================= */

@media(max-width:1024px){

    .smk5-intro__grid,
    .smk5-doctor__grid{
        gap:55px;
    }

    /* desktopové minimální šířky sloupců (440 / 380 px) se na tabletu zruší */

    .smk5-intro__grid{
        grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
    }

    .smk5-doctor__grid{
        grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
    }

    .smk5-calc__result{
        padding:24px 20px;
    }

    .smk5-principle__inner{
        width:calc(100% - 56px);
        gap:55px;
    }

    .smk5-session__layout{
        grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);
        gap:50px;
    }

    .smk5-session__intro{
        position:static;
    }

    .smk5-calc__head,
    .smk5-voices__head{
        gap:45px;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media(max-width:767px){

    .smk5-intro,
    .smk5-principle,
    .smk5-session,
    .smk5-doctor,
    .smk5-calc,
    .smk5-voices{
        padding-top:60px;
        padding-bottom:60px;
    }

    .smk5-note{
        padding-bottom:60px;
    }


    /* INTRO */

    .smk5-intro__grid{
        grid-template-columns:minmax(0,1fr);
        gap:38px;
    }

    .smk5-intro__facts{
        grid-template-columns:minmax(0,1fr);
    }

    .smk5-intro__fact{
        padding:20px 0;
    }

    .smk5-intro__fact + .smk5-intro__fact{
        padding-left:0;
        border-left:0;
        border-top:1px solid var(--bicom-line);
    }

    .smk5-intro__visual,
    .smk5-intro__visual img{
        min-height:420px;
    }


    /* PRINCIPLE */

    .smk5-principle__inner{
        width:calc(100% - 40px);
        grid-template-columns:minmax(0,1fr);
        gap:40px;
    }

    .smk5-principle__claim{
        padding:30px 0 0;
        border-left:0;
        border-top:1px solid rgba(255,255,255,.2);
    }


    /* SESSION */

    .smk5-session__layout{
        grid-template-columns:minmax(0,1fr);
        gap:40px;
    }

    .smk5-session__step{
        grid-template-columns:48px minmax(0,1fr);
        gap:18px;
        padding:28px 0;
    }


    /* DOCTOR */

    .smk5-doctor__grid{
        grid-template-columns:minmax(0,1fr);
        gap:38px;
    }

    .smk5-doctor__photo,
    .smk5-doctor__photo img{
        min-height:420px;
    }


    /* CALCULATOR */

    .smk5-calc__head{
        grid-template-columns:minmax(0,1fr);
        gap:20px;
        margin-bottom:34px;
    }

    .smk5-calc__inputs{
        grid-template-columns:minmax(0,1fr);
    }

    .smk5-calc__results{
        grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    }

    .smk5-calc__result{
        min-height:130px;
    }

    .smk5-calc__result + .smk5-calc__result{
        border-left:0;
    }

    .smk5-calc__result:nth-child(even){
        border-left:1px solid var(--bicom-line);
    }

    .smk5-calc__result:nth-child(n+3){
        border-top:1px solid var(--bicom-line);
    }


    /* VOICES */

    .smk5-voices__head{
        grid-template-columns:minmax(0,1fr);
        gap:20px;
        margin-bottom:34px;
    }

    .smk5-voices__layout{
        grid-template-columns:minmax(0,1fr);
    }

    .smk5-voice-main{
        min-height:360px;
        padding:36px 28px;
    }

    .smk5-voice-main__mark{
        left:25px;
    }


    /* NOTE */

    .smk5-note__inner{
        padding:25px 24px 25px 28px;
    }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media(max-width:480px){

    .smk5-principle__inner{
        width:calc(100% - 32px);
    }

    .smk5-intro__visual,
    .smk5-intro__visual img,
    .smk5-doctor__photo,
    .smk5-doctor__photo img{
        min-height:350px;
    }

    .smk5-session__step{
        grid-template-columns:minmax(0,1fr);
        gap:10px;
    }

    .smk5-calc__field{
        padding:22px;
    }

    .smk5-calc__results{
        grid-template-columns:minmax(0,1fr);
    }

    .smk5-calc__result:nth-child(even){
        border-left:0;
    }

    .smk5-calc__result + .smk5-calc__result{
        border-top:1px solid var(--bicom-line);
    }

    .smk5-voice-main{
        min-height:330px;
        padding:34px 24px;
    }

    .smk5-voice-side article{
        padding:28px 24px;
    }

}

/* =========================================================
   RESPONZIVITA: DOPLŇKY PRO MOBILY
   Pouze přidává vlastnosti, žádný stávající selektor
   ani jeho specificitu nemění.
   ========================================================= */

@media (max-width:767px) {

  /* dlouhé nadpisy se zalomí místo přetečení mimo obrazovku */
  .smk5-intro__fact strong,
  .smk5-session__body h3,
  .smk5-calc__result strong,
  .smk5-voice-main p,
  .smk5-principle__claim > strong,
  .smk5-doctor__statement,
  .smk5-intro__lead {
    overflow-wrap: break-word;
  }

}

    line-height:1.55;
    font-weight:var(--bicom-weight-bold);


.smk5-intro__facts{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:0;
    margin-top:38px;
    border-top:1px solid var(--bicom-line);
    border-bottom:1px solid var(--bicom-line);
}

.smk5-intro__fact{
    padding:24px 22px 24px 0;
}

.smk5-intro__fact + .smk5-intro__fact{
    padding-left:24px;
    border-left:1px solid var(--bicom-line);
}

.smk5-intro__fact strong{
    display:block;
    color:var(--bicom-navy);
    font-size:20px;
    line-height:1.2;
    font-weight:var(--bicom-weight-bold);
    letter-spacing:-.02em;
}

.smk5-intro__fact span{
    display:block;
    margin-top:7px;
    color:var(--bicom-muted);
    font-size:16px;
    line-height:1.45;
    font-weight:var(--bicom-weight-semibold);
}

.smk5-links{
    margin-top:30px;
}

.smk5-links .bicom-link{
    margin-top:0;
}

.smk5-intro__visual{
    position:relative;
    width:100%;
    min-height:580px;
    overflow:hidden;
    background:var(--bicom-surface);
}

.smk5-intro__visual img{
    width:100%;
    height:100%;
    min-height:580px;
    object-fit:cover;
}


/* =========================================================
   02 / PRINCIPLE
   ========================================================= */

.smk5-principle{
    width:100%;
    padding:80px 0;
    background:var(--bicom-dark);
}

.smk5-principle__inner{
    width:min(calc(100% - 80px),1320px);
    margin-inline:auto;
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(300px,.48fr);
    gap:clamp(60px,8vw,120px);
    align-items:center;
}

.smk5-principle__content{
    max-width:700px;
}

.smk5-principle .bicom-kicker{
    color:var(--bicom-green);
}

.smk5-principle .bicom-heading{
    margin:0;
    color:var(--bicom-white);
}

.smk5-principle .bicom-copy{
    margin-top:24px;
    color:var(--bicom-white);
}

.smk5-principle .bicom-link,
.smk5-principle .bicom-link:visited,
.smk5-principle .bicom-link:hover,
.smk5-principle .bicom-link:focus,
.smk5-principle .bicom-link:active{
    color:var(--bicom-white);
}

.smk5-principle__claim{
    padding:36px 0 36px 38px;
    border-left:1px solid rgba(255,255,255,.2);
}

.smk5-principle__claim > strong{
    display:block;
    color:var(--bicom-green);
    font-size:clamp(54px,5vw,76px);
    line-height:.95;
    font-weight:var(--bicom-weight-bold);
    letter-spacing:-.055em;
}

.smk5-principle__claim > span{
    display:block;
    max-width:310px;
    margin-top:18px;
    color:var(--bicom-white);
    font-size:18px;
    line-height:1.5;
    font-weight:var(--bicom-weight-bold);
}

.smk5-principle__claim small{
    display:block;
    max-width:310px;
    margin-top:18px;
    color:rgba(255,255,255,.72);
    font-size:16px;
    line-height:1.55;
    font-weight:var(--bicom-weight-medium);
}


/* =========================================================
   03 / SESSION
   ========================================================= */

.smk5-session{
    width:100%;
    padding:80px 0;
    background:var(--bicom-surface);
}

.smk5-session__layout{
    display:grid;
    grid-template-columns:minmax(300px,.68fr) minmax(0,1.32fr);
    gap:clamp(60px,8vw,120px);
    align-items:start;
}

.smk5-session__intro{
    position:sticky;
    top:120px;
}

.smk5-session__intro .bicom-heading{
    margin:0;
}

.smk5-session__intro .bicom-copy{
    margin-top:24px;
}

.smk5-session__intro-note{
    margin-top:28px;
    padding-top:20px;
    border-top:2px solid var(--bicom-green);
    color:var(--bicom-navy);
    font-size:17px;
    line-height:1.5;
    font-weight:var(--bicom-weight-bold);
}

.smk5-session__steps{
    border-top:1px solid var(--bicom-line);
}

.smk5-session__step{
    display:grid;
    grid-template-columns:70px minmax(0,1fr);
    gap:30px;
    padding:34px 0;
    border-bottom:1px solid var(--bicom-line);
}

.smk5-session__num{
    color:var(--bicom-green);
    font-size:18px;
    line-height:1.2;
    font-weight:var(--bicom-weight-bold);
}

.smk5-session__body > span{
    display:block;
    margin-bottom:9px;
    color:var(--bicom-muted);
    font-size:16px;
    line-height:1.3;
    font-weight:var(--bicom-weight-bold);
    letter-spacing:.05em;
    text-transform:uppercase;
}

.smk5-session__body h3{
    margin:0;
    color:var(--bicom-navy);
    font-size:clamp(25px,2.2vw,32px);
    line-height:1.12;
    font-weight:var(--bicom-weight-bold);
    letter-spacing:-.025em;
}

.smk5-session__body p{
    max-width:650px;
    margin:16px 0 0;
    color:var(--bicom-text);
    font-size:17px;
    line-height:1.65;
}

.smk5-session__detail{
    padding-left:18px;
    border-left:2px solid var(--bicom-green);
    color:var(--bicom-muted) !important;
}


/* =========================================================
   04 / DOCTOR
   ========================================================= */

.smk5-doctor{
    width:100%;
    padding:80px 0;
    background:var(--bicom-white);
}

.smk5-doctor__grid{
    display:grid;
    grid-template-columns:minmax(380px,.88fr) minmax(0,1.12fr);
    gap:clamp(60px,8vw,120px);
    align-items:center;
}

.smk5-doctor__visual{
    width:100%;
}

.smk5-doctor__photo{
    width:100%;
    min-height:500px;
    overflow:hidden;
    background:var(--bicom-surface);
}

.smk5-doctor__photo img{
    width:100%;
    height:100%;
    min-height:500px;
    object-fit:cover;
}

.smk5-doctor__content{
    max-width:650px;
}

.smk5-doctor__content .bicom-heading{
    margin:0;
}

.smk5-doctor__statement{
    margin:30px 0 0;
    color:var(--bicom-text);
    font-size:20px;
    line-height:1.65;
    font-weight:var(--bicom-weight-medium);
}

.smk5-doctor__statement strong{
    color:var(--bicom-navy);
    font-weight:var(--bicom-weight-bold);
}

.smk5-doctor__author{
    display:flex;
    flex-direction:column;
    gap:4px;
    margin-top:30px;
    padding-top:22px;
    border-top:1px solid var(--bicom-line);
}

.smk5-doctor__author strong{
    color:var(--bicom-navy);
    font-size:18px;
    line-height:1.3;
    font-weight:var(--bicom-weight-bold);
}

.smk5-doctor__author span{
    color:var(--bicom-muted);
    font-size:16px;
    line-height:1.4;
    font-weight:var(--bicom-weight-semibold);
}


/* =========================================================
   05 / CALCULATOR
   ========================================================= */

.smk5-calc{
    width:100%;
    padding:80px 0;
    background:var(--bicom-dark);
}

.smk5-calc__head{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(330px,.55fr);
    gap:70px;
    align-items:end;
    margin-bottom:44px;
}

.smk5-calc__head .bicom-heading{
    margin:0;
    color:var(--bicom-white);
}

.smk5-calc__head .bicom-copy{
    margin:0;
    color:var(--bicom-white);
}

.smk5-calc__box{
    background:var(--bicom-white);
}

.smk5-calc__inputs{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:1px;
    background:var(--bicom-line);
    border:1px solid var(--bicom-line);
}

.smk5-calc__field{
    padding:28px;
    background:var(--bicom-white);
}

.smk5-calc__field label{
    display:block;
    margin-bottom:12px;
    color:var(--bicom-navy);
    font-size:16px;
    line-height:1.35;
    font-weight:var(--bicom-weight-bold);
}

.smk5-calc__field input{
    width:100%;
    height:54px;
    padding:0 16px;
    border:1px solid var(--bicom-line);
    border-radius:0;
    outline:0;
    background:var(--bicom-surface-soft);
    color:var(--bicom-navy);
    font-family:inherit;
    font-size:17px;
    line-height:1;
    font-weight:var(--bicom-weight-bold);
    transition:border-color .2s ease,background .2s ease;
}

.smk5-calc__field input::placeholder{
    color:var(--bicom-muted);
    opacity:.8;
}

.smk5-calc__field input:focus{
    border-color:var(--bicom-green);
    background:var(--bicom-white);
}

.smk5-calc__results{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    border-left:1px solid var(--bicom-line);
    border-right:1px solid var(--bicom-line);
    border-bottom:1px solid var(--bicom-line);
}

.smk5-calc__result{
    min-height:150px;
    padding:28px;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.smk5-calc__result + .smk5-calc__result{
    border-left:1px solid var(--bicom-line);
}

.smk5-calc__result strong{
    display:block;
    color:var(--bicom-navy);
    font-size:clamp(27px,2.5vw,36px);
    line-height:1;
    font-weight:var(--bicom-weight-bold);
    letter-spacing:-.035em;
}

.smk5-calc__result span{
    display:block;
    margin-top:10px;
    color:var(--bicom-muted);
    font-size:16px;
    line-height:1.4;
    font-weight:var(--bicom-weight-semibold);
}

.smk5-calc__note{
    max-width:820px;
    margin:20px 0 0;
    color:rgba(255,255,255,.72);
    font-size:16px;
    line-height:1.55;
}


/* =========================================================
   06 / EXPERIENCES
   ========================================================= */

.smk5-voices{
    width:100%;
    padding:80px 0;
    background:var(--bicom-white);
}

.smk5-voices__head{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(320px,.52fr);
    gap:70px;
    align-items:end;
    margin-bottom:48px;
}

.smk5-voices__head .bicom-heading{
    margin:0;
}

.smk5-voices__head .bicom-copy{
    margin:0;
}

.smk5-voices__layout{
    display:grid;
    grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);
    gap:20px;
}

.smk5-voice-main{
    position:relative;
    min-height:410px;
    padding:46px;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    background:var(--bicom-dark);
}

.smk5-voice-main__mark{
    position:absolute;
    top:28px;
    left:38px;
    color:var(--bicom-green);
    font-size:80px;
    line-height:1;
    font-weight:var(--bicom-weight-bold);
}

.smk5-voice-main p{
    max-width:720px;
    margin:0;
    color:var(--bicom-white);
    font-size:clamp(26px,2.7vw,38px);
    line-height:1.27;
    font-weight:var(--bicom-weight-semibold);
    letter-spacing:-.025em;
}

.smk5-voice-main > strong{
    display:block;
    margin-top:28px;
    color:var(--bicom-green);
    font-size:16px;
    line-height:1.4;
    font-weight:var(--bicom-weight-bold);
}

.smk5-voice-side{
    display:grid;
    grid-template-rows:1fr 1fr;
    gap:20px;
}

.smk5-voice-side article{
    padding:34px;
    background:var(--bicom-surface);
}

.smk5-voice-side p{
    margin:0;
    color:var(--bicom-text);
    font-size:17px;
    line-height:1.65;
}

.smk5-voice-side strong{
    display:block;
    margin-top:22px;
    padding-top:18px;
    border-top:1px solid var(--bicom-line);
    color:var(--bicom-navy);
    font-size:16px;
    line-height:1.4;
    font-weight:var(--bicom-weight-bold);
}

.smk5-voices__link{
    margin-top:30px;
}

.smk5-voices__link .bicom-link{
    margin-top:0;
}


/* =========================================================
   07 / NOTE
   ========================================================= */

.smk5-note{
    width:100%;
    padding:0 0 80px;
    background:var(--bicom-white);
}

.smk5-note__inner{
    position:relative;
    padding:28px 34px 28px 38px;
    background:var(--bicom-surface);
    border-left:4px solid var(--bicom-green);
}

.smk5-note__inner strong{
    display:block;
    margin:0 0 8px;
    color:var(--bicom-navy);
    font-size:18px;
    line-height:1.3;
    font-weight:var(--bicom-weight-bold);
}

.smk5-note__inner p{
    max-width:950px;
    margin:0;
    color:var(--bicom-text);
    font-size:16px;
    line-height:1.65;
}


/* =========================================================
   LINK PROTECTION
   ========================================================= */

.smk5-page .bicom-link,
.smk5-page .bicom-link:visited{
    text-decoration:none;
}

.smk5-page .bicom-link:not(.bicom-link--light),
.smk5-page .bicom-link:not(.bicom-link--light):visited,
.smk5-page .bicom-link:not(.bicom-link--light):hover,
.smk5-page .bicom-link:not(.bicom-link--light):focus,
.smk5-page .bicom-link:not(.bicom-link--light):active{
    color:var(--bicom-navy);
}

.smk5-page .bicom-link--light,
.smk5-page .bicom-link--light:visited,
.smk5-page .bicom-link--light:hover,
.smk5-page .bicom-link--light:focus,
.smk5-page .bicom-link--light:active{
    color:var(--bicom-white);
}


/* =========================================================
   COMPACT DESKTOP
   ========================================================= */

@media(min-width:1025px) and (max-height:960px){

    .smk5-intro,
    .smk5-principle,
    .smk5-session,
    .smk5-doctor,
    .smk5-calc,
    .smk5-voices{
        padding-top:64px;
        padding-bottom:64px;
    }

    .smk5-note{
        padding-bottom:64px;
    }

    .smk5-intro__visual,
    .smk5-intro__visual img{
        min-height:490px;
    }

    .smk5-doctor__photo,
    .smk5-doctor__photo img{
        min-height:440px;
    }

}


/* =========================================================
   TABLET
   ========================================================= */

@media(max-width:1024px){

    .smk5-intro__grid,
    .smk5-doctor__grid{
        gap:55px;
    }

    .smk5-principle__inner{
        width:calc(100% - 56px);
        gap:55px;
    }

    .smk5-session__layout{
        grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);
        gap:50px;
    }

    .smk5-session__intro{
        position:static;
    }

    .smk5-calc__head,
    .smk5-voices__head{
        gap:45px;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media(max-width:767px){

    .smk5-intro,
    .smk5-principle,
    .smk5-session,
    .smk5-doctor,
    .smk5-calc,
    .smk5-voices{
        padding-top:60px;
        padding-bottom:60px;
    }

    .smk5-note{
        padding-bottom:60px;
    }


    /* INTRO */

    .smk5-intro__grid{
        grid-template-columns:1fr;
        gap:38px;
    }

    .smk5-intro__facts{
        grid-template-columns:1fr;
    }

    .smk5-intro__fact{
        padding:20px 0;
    }

    .smk5-intro__fact + .smk5-intro__fact{
        padding-left:0;
        border-left:0;
        border-top:1px solid var(--bicom-line);
    }

    .smk5-intro__visual,
    .smk5-intro__visual img{
        min-height:420px;
    }


    /* PRINCIPLE */

    .smk5-principle__inner{
        width:calc(100% - 40px);
        grid-template-columns:1fr;
        gap:40px;
    }

    .smk5-principle__claim{
        padding:30px 0 0;
        border-left:0;
        border-top:1px solid rgba(255,255,255,.2);
    }


    /* SESSION */

    .smk5-session__layout{
        grid-template-columns:1fr;
        gap:40px;
    }

    .smk5-session__step{
        grid-template-columns:48px minmax(0,1fr);
        gap:18px;
        padding:28px 0;
    }


    /* DOCTOR */

    .smk5-doctor__grid{
        grid-template-columns:1fr;
        gap:38px;
    }

    .smk5-doctor__photo,
    .smk5-doctor__photo img{
        min-height:420px;
    }


    /* CALCULATOR */

    .smk5-calc__head{
        grid-template-columns:1fr;
        gap:20px;
        margin-bottom:34px;
    }

    .smk5-calc__inputs{
        grid-template-columns:1fr;
    }

    .smk5-calc__results{
        grid-template-columns:1fr 1fr;
    }

    .smk5-calc__result{
        min-height:130px;
    }

    .smk5-calc__result + .smk5-calc__result{
        border-left:0;
    }

    .smk5-calc__result:nth-child(even){
        border-left:1px solid var(--bicom-line);
    }

    .smk5-calc__result:nth-child(n+3){
        border-top:1px solid var(--bicom-line);
    }


    /* VOICES */

    .smk5-voices__head{
        grid-template-columns:1fr;
        gap:20px;
        margin-bottom:34px;
    }

    .smk5-voices__layout{
        grid-template-columns:1fr;
    }

    .smk5-voice-main{
        min-height:360px;
        padding:36px 28px;
    }

    .smk5-voice-main__mark{
        left:25px;
    }


    /* NOTE */

    .smk5-note__inner{
        padding:25px 24px 25px 28px;
    }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media(max-width:480px){

    .smk5-principle__inner{
        width:calc(100% - 32px);
    }

    .smk5-intro__visual,
    .smk5-intro__visual img,
    .smk5-doctor__photo,
    .smk5-doctor__photo img{
        min-height:350px;
    }

    .smk5-session__step{
        grid-template-columns:1fr;
        gap:10px;
    }

    .smk5-calc__field{
        padding:22px;
    }

    .smk5-calc__results{
        grid-template-columns:1fr;
    }

    .smk5-calc__result:nth-child(even){
        border-left:0;
    }

    .smk5-calc__result + .smk5-calc__result{
        border-top:1px solid var(--bicom-line);
    }

    .smk5-voice-main{
        min-height:330px;
        padding:34px 24px;
    }

    .smk5-voice-side article{
        padding:28px 24px;
    }

}