/* COLOR PALETTE */

:root {
  --icywhite: #eaf6ff;        /* icy white */
  --lightblue: #cfe9f7;        /* light ice blue */
  --lightcyan: #aee3f5;  /* frosty cyan */
  --glacierblue: #33728a;       /* glacier blue */
  --icy: #7fa9c2;        /* muted icy steel */
  --arcticlavender: #bcd4f6;       /* soft arctic lavender */
  --coldslate: #2f4f5f;        /* deep cold slate */
  --black: #000;
}

/* Fonts */

h1{
  font-family: 'Playfair Display', serif;
  font-weight: bold;
  color: var(--coldslate);
}

h2,
h3,
h4,
h5,
h6,
label,
legend {
    font-family: 'Dancing Script', cursive;
    font-weight: bold;
    color: var(--glacierblue);

}

body{
  font-family: 'Inter', sans-serif;
  font-weight: bold;
  color: var(--coldslate);
  background-color: var(--lightblue);
}

h1 { font-size: 5.5rem; }
h2 { font-size: 3rem; }
h3 { font-size: 2.3em; }
h4 { font-size: 1.5em; }
h5 { font-size: 1.3104em; }
h6 { font-size: 1.1447em;}
p { font-size: 1.20em; }
small { font-size: .8736em; }

 h1 {
        margin: 4rem 1rem 5rem 1rem;  
        text-align: center;
        border: double var(--white);
        border-width: 0.6rem;
        border-radius: 300px;
        padding: 3rem;
        background-color: rgba(234, 246, 255, 0.4);
        line-height: 1.2; 
    }

    h2 {
        margin: 1.5rem 0.5rem 1.5rem 0.5rem;
    }
    
    h3 {
       margin: 1rem 0.5rem 1.5rem 0.5rem; 
    }
    
    h4 {
        margin: 1rem 0.5rem 0.5rem 0.5rem; 
    }
    
    h5 {
        margin: 1rem 0.5rem 0.5rem 0.5rem; 
    }

    ol {
        margin: 1rem 1rem 0.5rem 0.5rem; 
        font-size: 19px;
    }

    p {
        margin: 0.7rem 0.6rem 0.7rem 0.6rem;
        max-width: 85ch;
        line-height: 1.2;
    }

    header{
        padding: 1rem;
    }

     header img {
        max-width: 25rem;
        display: block;
        margin: 0 auto;
    }

/* flex-box & grid */

  .earthday .flex-container{
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 0.5rem;
  margin: 0.5rem;
}

main {
    margin: 0.5rem;
}

/* Defines the background and rules */

body {
    background-image: 
    url(bgimg/ruben-zimmermann-wvqKGQQmKj8-unsplash.jpg);
    background-repeat: 
    no-repeat;
    background-size: 
    cover;
    background-position:
    center;
    background-attachment: 
    fixed;
    min-height: 
    100vh;
    margin: 0;
}

.giveaway {
    background-color: rgba(207, 233, 247, 0.7);
    padding: 1rem;
    border: outset var(--lightblue);
    border-width: 0.4rem;
    border-radius: 20px;
    background-image: 
    linear-gradient(rgba(207, 233, 247, 0.9), rgba(174, 227, 245, 0.7));
}

.giveaway::after {
  content: "";
  position: absolute;

  bottom: 0;
  right: 0;

  width: 300px;   /* ⬅️ bigger */
  height: 300px;  /* ⬅️ bigger */

  background-image: url("../img/walrus.png");
  background-size: contain;
  background-repeat: no-repeat;
}

.giveaway {
  position: relative;
}

.macmarket {
    background-color: rgba(207, 233, 247, 0.7);
    padding: 1rem;
    margin-top: 3rem;
    border: outset var(--lightblue);
    border-width: 0.4rem;
    border-radius: 20px;
    background-image: 
    linear-gradient(rgba(207, 233, 247, 0.9), rgba(174, 227, 245, 0.7));
}

.macmarket{
    overflow: hidden;
}


.gwd {
    background-color: rgba(207, 233, 247, 0.7);
    padding: 1rem;
    margin-top: 3rem;
    border: outset var(--lightblue);
    border-width: 0.4rem;
    border-radius: 20px;
     background-image: 
    linear-gradient(rgba(207, 233, 247, 0.9), rgba(174, 227, 245, 0.7));
}

.gwd {
  position: relative; /* required */
}

.gwd::before {
  content: "";
  position: absolute;

  top: -40px;     /* slightly outside for style */
  left: -40px;

  width: 280px;
  height: 280px;

  background-image: url("../img/whale.png");
  background-size: contain;
  background-repeat: no-repeat;

  opacity: 0.9;
  transform: rotate(8deg);

  pointer-events: none;
}

.transplant h2, .transplant h3{
    color: var(--coldslate);
    font-size: 32px;
    text-align: center;
}

.transplant {
    padding: 2rem;
    margin: 3rem;
    border: outset var(--lightblue);
    border-width: 0.4rem;
    border-radius: 200px;
    background-image: 
    linear-gradient(rgba(207, 233, 247, 0.9), rgba(174, 227, 245, 0.7));
}

.transplant {
  position: relative;
  overflow: visible;
}

.transplant::after {
  content: "";
  position: absolute;

  top: 50%;
  right: -60px;
  transform: translateY(-50%) rotate(-4deg);

  width: 260px;
  height: 260px;

  background-image: url("../img/polarbear.png");
  background-size: contain;
  background-repeat: no-repeat;

  opacity: 0.9;
  pointer-events: none;
}

/* logos */

.logos {
    background-color: rgba(207, 233, 247, 0.7);
    padding: 1rem;
    margin-top: 3rem;
    border: outset var(--lightblue);
    border-width: 0.4rem;
    border-radius: 20px;
    background-image: 
    linear-gradient(rgba(207, 233, 247, 0.9), rgba(174, 227, 245, 0.7));
    
}

.earthday {
    background-color: rgba(207, 233, 247, 0.7);
    padding: 1rem;
    margin-top: 3rem;
    margin-bottom: 3rem;
    border: outset var(--lightblue);
    border-width: 0.4rem;
    border-radius: 20px;
     background-image: 
    linear-gradient(rgba(207, 233, 247, 0.9), rgba(174, 227, 245, 0.7));
}

footer{
    padding: 2rem;
    background-color: var(--icy);
    border: outset var(--lightblue);
    border-width: 0.2rem;
    border-radius: 20px;
}

footer .gwd{
    color: var(--arcticlavender);
    background-color: transparent;
    border: none;
}

 .flex-container {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 2rem;
}

.column.one {
  flex: 1 1 300px; /* image column */
  display: flex;
  justify-content: center;
}

.column.two {
  flex: 1 1 400px; /* text column */
}

.flex-container img {
  width: 100%;
  max-width: 350px; /* controls size on desktop */
  height: auto;
  display: block;
}

/* =========================
   flex columns fix
   ========================= */

.flex-container {
  display: flex;
  flex-wrap: wrap; /* allows responsiveness */
  align-items: center;
  justify-content: center;
  gap: 2rem;
}

/* IMAGE */
.column.one {
  flex: 1 1 320px;
  display: flex;
  justify-content: center;
}

/* TEXT */
.column.two {
  flex: 1 1 400px;
}

.column.one img {
  width: 100%;
  max-width: 400px;
  height: auto;
  display: block;
}

/* =========================
   mobile stack
   ========================= */

@media (max-width: 768px) {
  .flex-container {
    flex-direction: column;
  }

  .column.one,
  .column.two {
    flex: 1 1 100%;
    text-align: center;
  }
}

