/*
Theme Name: The Quit Method
Theme URI: https://example.com/themes/the-quit-method
Author: Design
Author URI: https://example.com
Description: Lightweight, Elementor-friendly theme with built-in Blog and Latest News shortcodes. No Elementor Pro required.
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: tqm
Tags: one-column, two-columns, right-sidebar, custom-logo, custom-menu, featured-images, full-width-template, blog
*/

/* Basic Reset */
* { box-sizing: border-box; }
body { margin: 0; font-family: system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif; color:#0f172a; line-height:1.6; }
a { color:#0ea5e9; text-decoration:none; }
a:hover { text-decoration:underline; }

ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

/* Container helpers */
.tqm-container { width: min(1200px, 92%); margin: 0 auto; }
.tqm-section { padding: 60px 0; }

/* Grid */
.tqm-grid { display:grid; grid-template-columns: 1fr; gap:24px; }
@media (min-width:640px){ .tqm-grid.cols-2 { grid-template-columns: repeat(2,1fr);} }
@media (min-width:1024px){ .tqm-grid.cols-3 { grid-template-columns: repeat(3,1fr);} }
@media (min-width:1280px){ .tqm-grid.cols-4 { grid-template-columns: repeat(4,1fr);} }

/* Cards */
.tqm-card { background:#ffffff; border-radius:16px; overflow:hidden; box-shadow: 0 10px 30px rgba(15,23,42,.06); display:flex; flex-direction:column; }
.tqm-card img { width:100%; height:220px; object-fit:cover; display:block; }
.tqm-card-content { padding:18px; display:flex; flex-direction:column; gap:10px; }
.tqm-meta { font-size:12px; color:#64748b; display:flex; gap:10px; align-items:center; flex-wrap:wrap; }
.tqm-category { font-size:11px; padding:3px 8px; border-radius:999px; background:#e2e8f0; color:#0f172a; text-transform:uppercase; letter-spacing:.04em; }
.tqm-title { font-size:18px; font-weight:700; margin:0; color:#0f172a; }
.tqm-excerpt { margin:0; color:#334155; }
.tqm-readmore { font-size:14px; margin-top:auto; }

/* Section titles */
.tqm-heading { font-size:36px; text-align:center; margin:0 0 24px; font-weight:800; }
.tqm-subheading { text-align:center; margin:0 0 40px; color:#64748b; }

/* Header & Footer minimal */
.site-header, .site-footer { padding:16px 0; }
.site-header { border-bottom:1px solid #e2e8f0; }
.site-footer { border-top:1px solid #e2e8f0; color:#475569; }
.site-brand a { font-weight:800; font-size:20px; color:#0f172a; text-decoration:none; }
.nav ul { list-style:none; margin:0; padding:0; display:flex; gap:18px; flex-wrap:wrap; }
.nav a { color:#0f172a; text-decoration:none; }
.nav a:hover { color:#0ea5e9; }

/* Align wide for Gutenberg compatibility */
.alignwide { width: min(1200px, 92%); margin-left:auto; margin-right:auto; }
.alignfull { width:100vw; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); }


#menu-main-menu li {
    border-right: 1px solid #5ee0e5;
    line-height: 1;
}

#menu-main-menu li:last-child {
    border-right: none;
}


/*Pricing Table Styling*/

 .card {
      background: #1c1c1c;
      border-radius: 20px;
      padding: 30px;
      text-align: left;
      box-shadow: 0 8px 25px rgba(0,0,0,0.4);
      position: relative;
      transition: all 0.3s ease;
	  overflow: hidden;
    }

    .card:hover {
      transform: translateY(-10px);
      box-shadow: 0 15px 40px rgba(94, 224, 229, 0.4);
    }

    .card .icon {
      font-size: 40px;
      margin-bottom: 15px;
    }

    .card .title {
      font-size: 22px;
      font-weight: 700;
      color: #5ee0e5;
      margin-bottom: 10px;
    }

    .card .price {
      font-size: 26px;
      font-weight: bold;
      margin-bottom: 10px;
      color: #fff;
    }

    .card .duration {
      font-size: 14px;
      color: #aaa;
      margin-bottom: 20px;
    }

    .card .desc {
      font-size: 15px;
      line-height: 1.6;
      margin-bottom: 15px;
      color: #ffffff;
    }

    .card .result {
      font-size: 14px;
      color: #dcdcdc;
      margin-bottom: 20px;
    }

    .card .best-for {
      font-style: italic;
      font-size: 14px;
      margin-bottom: 25px;
      color: #5ee0e5;
    }

    .card .btn {
      display: inline-block;
      padding: 12px 25px;
      border-radius: 30px;
      background: #5ee0e5;
      color: #121212;
      text-decoration: none;
      font-weight: 600;
      transition: 0.3s ease;
    }

    .card .btn:hover {
      background: #42c8cf;
      color: #fff;
    }

    /* Ribbon for featured package */
    .card .ribbon {
      position: absolute;
      top: 15px;
      right: -35px;
      transform: rotate(45deg);
      background: #33abb6;
      color: #121212;
      padding: 5px 40px;
      font-size: 12px;
      font-weight: bold;
      box-shadow: 0 2px 6px rgba(0,0,0,0.3);
    }
