/*
Theme Name: Manual Gato de Apartamento
Theme URI: https://seusite.com/
Author: Wender TI
Author URI: https://seusite.com/
Description: Tema Landing Page de alta conversão para o E-book Manual do Gato de Apartamento.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: manual-gato
*/

:root {
    --bg-color: #FFFFFF;
    --text-color: #333333;
    --highlight: #F4C542;
    --cta-color: #FF7A00;
    --cta-hover: #E66A00;
    --light-gray: #F9F9F9;
}
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}
body {
    background-color: var(--bg-color);
    color: var(--text-color);
    line-height: 1.6;
    font-size: 16px;
    scroll-behavior: smooth;
}
.container {
    max-width: 600px;
    margin: 0 auto;
    background: #fff;
    box-shadow: 0 0 20px rgba(0,0,0,0.05);
}
section {
    padding: 40px 20px;
    border-bottom: 1px solid #EEEEEE;
}

/* Hero */
.hero {
    text-align: center;
    padding-top: 60px;
    padding-bottom: 60px;
}
h1 {
    font-size: 28px;
    font-weight: 800;
    line-height: 1.3;
    margin-bottom: 20px;
}
.highlight {
    background-color: var(--highlight);
    padding: 2px 5px;
    border-radius: 3px;
}
.subtitle {
    font-size: 18px;
    color: #555;
    margin-bottom: 30px;
}

/* CTA Buttons */
.cta-button {
    display: inline-block;
    background-color: var(--cta-color);
    color: #FFF;
    text-decoration: none;
    font-size: 19px;
    font-weight: 800;
    padding: 20px 25px;
    border-radius: 8px;
    text-align: center;
    width: 100%;
    box-shadow: 0 4px 15px rgba(255, 122, 0, 0.4);
    transition: transform 0.2s, background-color 0.2s;
    animation: pulse 2s infinite;
}
.cta-button:hover {
    background-color: var(--cta-hover);
    transform: translateY(-2px);
}
@keyframes pulse {
    0% { transform: scale(1); }
    50% { transform: scale(1.03); }
    100% { transform: scale(1); }
}

/* Typography */
h2 {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 25px;
    text-align: center;
    line-height: 1.3;
}

/* Lists */
ul.pain-points, ul.check-list {
    list-style: none;
}
ul.pain-points li, ul.check-list li {
    font-size: 17px;
    margin-bottom: 15px;
    padding-left: 30px;
    position: relative;
}
ul.pain-points li::before {
    content: "❌";
    position: absolute;
    left: 0;
    top: 2px;
}
ul.check-list li::before {
    content: "✅";
    position: absolute;
    left: 0;
    top: 2px;
}

/* Sections Customization */
.problem-awareness {
    background-color: var(--light-gray);
}
.belief-shift {
    text-align: center;
}
.belief-shift p {
    font-size: 18px;
    margin-bottom: 15px;
}
.big-idea {
    background-color: var(--highlight);
    text-align: center;
}
.big-idea h2 {
    color: #222;
}
.big-idea p {
    font-size: 18px;
    font-weight: 500;
    margin-bottom: 15px;
}

/* Product Box */
.product-box {
    background: #fff;
    border: 2px solid var(--highlight);
    border-radius: 10px;
    padding: 25px;
    text-align: center;
    margin-top: 30px;
}

/* Before & After */
.transformation {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.box-before {
    border: 2px solid #ff4d4d;
    border-radius: 8px;
    padding: 20px;
    background: #fffafa;
}
.box-after {
    border: 2px solid #4caf50;
    border-radius: 8px;
    padding: 20px;
    background: #f1f8e9;
}
.box-title {
    font-weight: bold;
    font-size: 18px;
    margin-bottom: 15px;
}
.box-before .box-title { color: #d32f2f; }
.box-after .box-title { color: #388e3c; }

/* Offer Section */
.offer {
    background-color: var(--light-gray);
    text-align: center;
}
.price {
    font-size: 54px;
    font-weight: 900;
    color: var(--text-color);
    margin: 10px 0;
    line-height: 1;
}
.old-price {
    text-decoration: line-through;
    color: #888;
    font-size: 20px;
}

/* Guarantee & Final */
.guarantee {
    text-align: center;
}
.urgency {
    font-size: 14px;
    color: #666;
    text-align: center;
    margin-top: 25px;
    font-style: italic;
}
.final-cta {
    text-align: center;
    padding-top: 60px;
    padding-bottom: 80px;
    background-color: var(--light-gray);
}

/* Image placeholders for the user to replace */
.image-placeholder {
    width: 100%;
    height: 200px;
    background-color: #EEE;
    border-radius: 8px;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #888;
    font-size: 14px;
    border: 2px dashed #CCC;
}

/* ----------------------------------
   RESPONSIVIDADE: TABLET & DESKTOP
   ---------------------------------- */
@media (min-width: 768px) {
    body { 
        background-color: #f4f6f8; 
        padding: 40px 20px;
    }
    .container {
        max-width: 850px;
        border-radius: 16px;
        margin: 0 auto;
    }
    section {
        padding: 60px 50px;
    }
    h1 {
        font-size: 38px;
    }
    .subtitle {
        font-size: 20px;
    }
    
    /* Lado a Lado nas Transformações */
    .transformation {
        flex-direction: row;
        gap: 30px;
    }
    .box-before, .box-after {
        flex: 1;
    }

    /* Produto: Lado a Lado */
    .product-box {
        display: flex;
        align-items: center;
        text-align: left;
        gap: 40px;
        padding: 35px;
    }
    .product-box img {
        margin-bottom: 0 !important;
        flex: 0 0 45%;
        max-height: 380px !important;
    }
    .product-box-text {
        flex: 1;
    }

    /* General CTAs */
    .cta-button {
        font-size: 21px;
        padding: 22px 30px;
    }
    .price {
        font-size: 64px;
    }
}
