/*=========================================================
  MaryJo Buzzanco Fine Art
  About Page Styles
  Part 1
=========================================================*/

/*=========================================================
  ROOT
=========================================================*/

:root{

    --about-bg:#f8f7f4;

    --about-card:#ffffff;

    --about-border:#e8e4dc;

    --about-accent:#7a6046;

    --about-accent-dark:#5f4631;

    --about-text:#333333;

    --about-light:#777777;

    --about-shadow:
        0 12px 30px rgba(0,0,0,.08);

    --about-radius:18px;

}

/*=========================================================
  PAGE
=========================================================*/

body{

    background:var(--about-bg);

    color:var(--about-text);

}

main{

    max-width:1500px;

    margin:auto;

}

/*=========================================================
  HERO
=========================================================*/

.hero{

    display:grid;

    grid-template-columns:320px 1fr;

    gap:70px;

    align-items:center;

    padding:80px 8%;

}

.hero-image{

    text-align:center;

}

.hero-image img{

    width:100%;

    max-width:300px;

    border-radius:50%;

    border:8px solid white;

    box-shadow:var(--about-shadow);

}

.section-tag{

    display:inline-block;

    padding:8px 18px;

    border-radius:999px;

    background:#efe8df;

    color:var(--about-accent-dark);

    font-size:.85rem;

    font-weight:600;

    letter-spacing:1px;

    text-transform:uppercase;

    margin-bottom:20px;

}

.hero-content h1{

    margin:0;

    font-size:3.2rem;

    color:var(--about-accent-dark);

}

.hero-content h2{

    margin:15px 0 30px;

    color:var(--about-accent);

    font-size:1.4rem;

    font-weight:500;

}

.hero-content p{

    line-height:1.9;

    font-size:1.08rem;

    color:#555;

    margin-bottom:22px;

}

/*=========================================================
  BUTTONS
=========================================================*/

.hero-button{

    display:inline-block;

    margin-top:20px;

    padding:15px 30px;

    border-radius:999px;

    background:var(--about-accent);

    color:white;

    text-decoration:none;

    font-weight:600;

    transition:.30s;

}

.hero-button:hover{

    background:var(--about-accent-dark);

    transform:translateY(-3px);

}

.hero-button.secondary{

    background:white;

    color:var(--about-accent-dark);

    border:2px solid var(--about-accent);

}

.hero-button.secondary:hover{

    background:var(--about-accent);

    color:white;

}

/*=========================================================
  SECTION SPACING
=========================================================*/

.about-section{

    padding:0 8% 80px;

}

.section-header{

    text-align:center;

    margin-bottom:50px;

}

.section-header span{

    display:block;

    color:var(--about-accent);

    font-weight:600;

    letter-spacing:2px;

    text-transform:uppercase;

    margin-bottom:12px;

    font-size:.9rem;

}

.section-header h2{

    margin:0;

    font-size:2.4rem;

    color:var(--about-accent-dark);

}

/*=========================================================
  STORY
=========================================================*/

.story-grid{

    display:grid;

    grid-template-columns:320px 1fr;

    gap:50px;

    align-items:center;

    background:var(--about-card);

    border-radius:var(--about-radius);

    padding:45px;

    box-shadow:var(--about-shadow);

}

.story-image{

    text-align:center;

}

.story-image img{

    width:100%;

    border-radius:18px;

    box-shadow:var(--about-shadow);

}

.story-content p{

    line-height:1.9;

    color:#555;

    margin-bottom:22px;

    font-size:1.05rem;

}

/*=========================================================
  About Page Styles
  Part 2
=========================================================*/

/*=========================================================
  WHAT I CREATE
=========================================================*/

.services-grid{

    display:grid;

    grid-template-columns:
        repeat(auto-fit,minmax(250px,1fr));

    gap:35px;

}

.service-card{

    background:var(--about-card);

    padding:35px;

    border-radius:var(--about-radius);

    text-align:center;

    box-shadow:var(--about-shadow);

    transition:
        transform .35s ease,
        box-shadow .35s ease;

}

.service-card:hover{

    transform:translateY(-8px);

    box-shadow:
        0 18px 35px rgba(0,0,0,.12);

}

.service-icon{

    font-size:3rem;

    margin-bottom:20px;

}

.service-card h3{

    color:var(--about-accent-dark);

    margin-bottom:18px;

}

.service-card p{

    color:#666;

    line-height:1.8;

}

/*=========================================================
  QUOTE
=========================================================*/

.quote-section{

    margin:80px 0;

    padding:100px 10%;

    background:
        linear-gradient(
            135deg,
            var(--about-accent),
            var(--about-accent-dark)
        );

    color:white;

    text-align:center;

}

.quote-section blockquote{

    max-width:900px;

    margin:auto;

    font-size:2rem;

    line-height:1.6;

    font-style:italic;

}

/*=========================================================
  HIGHLIGHTS
=========================================================*/

.stats-grid{

    display:grid;

    grid-template-columns:
        repeat(auto-fit,minmax(220px,1fr));

    gap:30px;

}

.stat-card{

    background:white;

    border-radius:var(--about-radius);

    padding:35px;

    text-align:center;

    box-shadow:var(--about-shadow);

}

.stat-card h3{

    color:var(--about-accent-dark);

    margin-bottom:15px;

}

.stat-card p{

    color:#666;

    line-height:1.7;

}

/*=========================================================
  FAQ
=========================================================*/

.faq{

    display:grid;

    gap:25px;

}

.faq-item{

    background:white;

    border-radius:var(--about-radius);

    padding:30px;

    box-shadow:var(--about-shadow);

}

.faq-item h3{

    color:var(--about-accent-dark);

    margin-bottom:15px;

}

.faq-item p{

    color:#666;

    line-height:1.8;

}

/*=========================================================
  CONTACT BANNER
=========================================================*/

.contact-banner{

    margin:80px 8%;

    padding:70px;

    border-radius:25px;

    background:white;

    text-align:center;

    box-shadow:var(--about-shadow);

}

.contact-banner h2{

    color:var(--about-accent-dark);

    font-size:2.4rem;

    margin-bottom:25px;

}

.contact-banner p{

    max-width:700px;

    margin:0 auto 35px;

    line-height:1.9;

    color:#666;

}

.contact-buttons{

    display:flex;

    justify-content:center;

    gap:20px;

    flex-wrap:wrap;

}

/*=========================================================
  FOOTER
=========================================================*/

.site-footer{

    text-align:center;

    background:white;

    padding:70px 40px 50px;

    border-top:1px solid #ececec;

}

.site-footer h2{

    color:var(--about-accent-dark);

    margin-bottom:20px;

}

.site-footer p{

    max-width:700px;

    margin:0 auto 30px;

    line-height:1.8;

    color:#666;

}

.social-links{

    display:flex;

    justify-content:center;

    gap:20px;

    flex-wrap:wrap;

    margin-bottom:35px;

}

.social-links a{

    display:inline-block;

    padding:14px 28px;

    background:var(--about-accent);

    color:white;

    text-decoration:none;

    border-radius:999px;

    transition:.3s;

}

.social-links a:hover{

    background:var(--about-accent-dark);

    transform:translateY(-3px);

}

.copyright{

    color:#888;

    font-size:.9rem;

}

/*=========================================================
  RESPONSIVE
=========================================================*/

@media (max-width:1000px){

    .hero{

        grid-template-columns:1fr;

        text-align:center;

    }

    .story-grid{

        grid-template-columns:1fr;

    }

}

@media (max-width:768px){

    .hero{

        padding:50px 25px;

    }

    .about-section{

        padding:0 25px 60px;

    }

    .hero-content h1{

        font-size:2.4rem;

    }

    .hero-content h2{

        font-size:1.2rem;

    }

    .section-header h2{

        font-size:2rem;

    }

    .quote-section{

        padding:70px 30px;

    }

    .quote-section blockquote{

        font-size:1.5rem;

    }

    .contact-banner{

        margin:60px 25px;

        padding:45px 25px;

    }

}

@media (prefers-reduced-motion:reduce){

    *{

        animation:none !important;

        transition:none !important;

    }

}