@import url(https://fonts.bunny.net/css?family=roboto:400,900);

:root {
    --min-screen-width: 320px;
    --max-screen-width: 992px;
    --primary: hsla(205, 88%, 38%, 1);
    --primary-5: hsla(205, 88%, 38%, 0.05);
    --primary-10: hsla(205, 88%, 38%, 0.1);
    --primary-20: hsla(205, 88%, 38%, 0.2);
    --primary-30: hsla(205, 88%, 38%, 0.3);
    --primary-40: hsla(205, 88%, 38%, 0.4);
    --primary-50: hsla(205, 88%, 38%, 0.5);
    --primary-60: hsla(205, 88%, 38%, 0.6);
    --primary-70: hsla(205, 88%, 38%, 0.7);
    --primary-80: hsla(205, 88%, 38%, 0.8);
    --primary-90: hsla(205, 88%, 38%, 0.9);
    --primary-d-1: hsla(208, 71%, 33%, 1);
    --primary-d-2: hsla(210, 59%, 26%, 1);
    --primary-d-3: hsla(212, 49%, 18%, 1);
    --primary-d-4: hsla(216, 36%, 11%, 1);
    --primary-l-1: hsla(213, 49%, 56%, 1);
    --primary-l-2: hsla(215, 48%, 68%, 1);
    --primary-l-3: hsla(218, 48%, 79%, 1);
    --primary-l-4: hsla(218, 47%, 89%, 1);
    --bg-body: hsla(0, 0%, 100%, 1);
    --bg-surface: hsl(207 75% 94% / 1);
    --bg-dark: rgb(4, 27, 54);
    --text-body: hsla(0, 0%, 0%, 1);
    --text-light: hsla(190, 23%, 95%, 1);
    --border-primary: hsla(0, 0%, 50%, 0.25);
    --shadow-primary: hsla(0, 0%, 0%, 0.15);
    --success: hsla(136, 95%, 40%, 1);
    --success-5: hsla(136, 95%, 40%, 0.05);
    --success-10: hsla(136, 95%, 40%, 0.1);
    --success-20: hsla(136, 95%, 40%, 0.2);
    --success-30: hsla(136, 95%, 40%, 0.3);
    --success-40: hsla(136, 95%, 40%, 0.4);
    --success-50: hsla(136, 95%, 40%, 0.5);
    --success-60: hsla(136, 95%, 40%, 0.6);
    --success-70: hsla(136, 95%, 40%, 0.7);
    --success-80: hsla(136, 95%, 40%, 0.8);
    --success-90: hsla(136, 95%, 40%, 0.9);
    --error: hsla(351, 95%, 34%, 1);
    --error-5: hsla(351, 95%, 34%, 0.05);
    --error-10: hsla(351, 95%, 34%, 0.1);
    --error-20: hsla(351, 95%, 34%, 0.2);
    --error-30: hsla(351, 95%, 34%, 0.3);
    --error-40: hsla(351, 95%, 34%, 0.4);
    --error-50: hsla(351, 95%, 34%, 0.5);
    --error-60: hsla(351, 95%, 34%, 0.6);
    --error-70: hsla(351, 95%, 34%, 0.7);
    --error-80: hsla(351, 95%, 34%, 0.8);
    --error-90: hsla(351, 95%, 34%, 0.9);
    --space-4xs: clamp(0.33rem, calc(-0.03vw + 0.33rem), 0.31rem);
    --space-3xs: clamp(0.41rem, calc(0.04vw + 0.4rem), 0.44rem);
    --space-2xs: clamp(0.51rem, calc(0.16vw + 0.48rem), 0.62rem);
    --space-xs: clamp(0.64rem, calc(0.35vw + 0.57rem), 0.88rem);
    --space-s: clamp(0.8rem, calc(0.65vw + 0.67rem), 1.24rem);
    --space-m: clamp(1rem, calc(1.11vw + 0.78rem), 1.75rem);
    --space-l: clamp(1.25rem, calc(1.81vw + 0.89rem), 2.47rem);
    --space-xl: clamp(1.56rem, calc(2.87vw + 0.99rem), 3.5rem);
    --space-2xl: clamp(1.95rem, calc(4.44vw + 1.07rem), 4.95rem);
    --space-3xl: clamp(2.44rem, calc(6.75vw + 1.09rem), 7rem);
    --space-4xl: clamp(3.05rem, calc(10.13vw + 1.02rem), 9.89rem);
    --text-xs: clamp(0.79rem, calc(-0.23vw + 0.84rem), 0.63rem);
    --text-s: clamp(0.89rem, calc(-0.07vw + 0.9rem), 0.84rem);
    --text-m: clamp(1rem, calc(0.19vw + 0.96rem), 1.13rem);
    --text-l: clamp(1.13rem, calc(0.55vw + 1.01rem), 1.5rem);
    --text-xl: clamp(1.27rem, calc(1.09vw + 1.05rem), 2rem);
    --text-2xl: clamp(1.42rem, calc(1.84vw + 1.06rem), 2.66rem);
    --text-3xl: clamp(1.6rem, calc(2.89vw + 1.02rem), 3.55rem);
    --text-4xl: clamp(1.8rem, calc(4.34vw + 0.93rem), 4.74rem);
    --hero-title-size: var(--text-4xl);
    --post-title-size: var(--text-2xl);
    --nav-link-size: var(--text-s);
    --header-space: var(--space-s);
    --btn-space: var(--space-xs) var(--space-s);
    --grid-space: var(--space-s);
    --footer-space: var(--space-s) var(--space-m);
    --radius-xs: clamp(0.25rem, calc(0vw + 0.25rem), 0.25rem);
    --radius-s: clamp(0.38rem, calc(-0.19vw + 0.54rem), 0.5rem);
    --radius-m: clamp(0.63rem, calc(-0.19vw + 0.79rem), 0.75rem);
    --radius-l: clamp(1rem, calc(-0.37vw + 1.32rem), 1.25rem);
    --radius-xl: clamp(1.63rem, calc(-0.56vw + 2.11rem), 2rem);
    --radius-full: 999rem;
    --shadow-xs: 0 1px 2px var(--shadow-primary);
    --shadow-s: 0 1.5px 3px var(--shadow-primary);
    --shadow-m: 0 2px 6px var(--shadow-primary);
    --shadow-l: 0 3px 12px var(--shadow-primary);
    --shadow-xl: 0 6px 48px var(--shadow-primary);
    --max-width-logo: 15rem;
}

* {
    font-family: 'Roboto', sans-serif;
}

body {
    font-size: var(--text-m);
}

.container {
    max-width: var(--max-screen-width);
}

.width-ch-70 {
    max-width: 70ch;
}

.company-logo {
    width: var(--max-width-logo);
}

svg.icons {
    color: var(--primary);
}

.hero {
    height: 400px;
}

.hero .container {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.hero .lead {
    max-width: 50ch;
    font-family: inherit;
    font-weight: inherit;
    line-height: initial;
}

.bg-form {
    background: var(--bg-surface);
}

.parent {
    display: grid;
    grid-template-columns: minmax(0, 20rem) 1fr;
    grid-column-gap: var(--grid-space);
    grid-row-gap: var(--grid-space);
}

.form__header {
    background: var(--bg-surface);
    border-top: 1px solid var(--border-primary););
    border-top-left-radius: var(--radius-m);
    border-top-right-radius: var(--radius-m);
}

.card {
    border: none;
    border-radius: var(--radius-m);
    box-shadow: var(--shadow-s);
    margin-top: -10.4rem;
    overflow: hidden;
}

.btn-primary {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--primary);
    color: #fff;
    font-size: var(--text-m);
    font-weight: 600;
    box-shadow: var(--shadow-m);
    transition: all 0.25s ease-in-out;
    outline: 0;
    cursor: pointer;
}

.btn-primary:hover {
    background: var(--primary-d-1);
    transform: translateY(-0.1rem);
}

footer {
    background: var(--bg-dark);
    color: var(--text-light);
}


@media (max-width: 768px) {
   .parent {
        display: grid;
        grid-template-columns: 1fr;
        grid-column-gap: var(--grid-space);
        grid-row-gap: var(--grid-space);
    } 
    
    .card {
        margin-top: 0;
    }
    
    .hero {
        height: 300px;
    }
}