﻿:root{--teal:#1a9e8f;--teal-dark:#157a6e;--teal-light:#e8f7f5;--teal-mid:#2bbdac;--yellow:#f5c842;--yellow-dark:#e0b020;--dark:#1a2e2a;--gray:#6b7280;--gray-light:#f4f7f6;--white:#ffffff;--line:rgba(26,158,143,0.15);--radius:16px;--radius-lg:24px;--shadow:0 4px 24px rgba(26,158,143,0.12);--shadow-lg:0 8px 48px rgba(26,158,143,0.18);--max:1200px;}
    *,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
    html{scroll-behavior:smooth;overflow-x:hidden;max-width:100%;}
    body{font-family:'Nunito',sans-serif;color:var(--dark);background:#fff;overflow-x:hidden;line-height:1.55;word-wrap:break-word;overflow-wrap:break-word;}
    a{color:inherit;text-decoration:none;}
    img{max-width:100%;display:block;}
    h1,h2,h3,h4,h5{font-family:'Fredoka One',cursive;letter-spacing:0.02em;line-height:1.15;overflow-wrap:break-word;word-break:break-word;}
    .container{width:min(var(--max),calc(100% - 32px));margin:0 auto;}
    .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 28px;border-radius:50px;font-family:'Fredoka One',cursive;font-size:1rem;cursor:pointer;border:2px solid transparent;transition:all 0.25s;letter-spacing:0.03em;min-height:48px;}
    .btn:hover{transform:translateY(-2px);}
    .btn-primary{background:var(--yellow);color:var(--dark);box-shadow:0 4px 16px rgba(245,200,66,0.35);border-color:var(--yellow);}
    .btn-primary:hover{background:var(--yellow-dark);border-color:var(--yellow-dark);}
    .btn-outline{background:transparent;color:#fff;border-color:rgba(255,255,255,0.6);}
    .btn-outline:hover{background:rgba(255,255,255,0.15);}
    .btn-ghost{background:rgba(255,255,255,0.08);color:#fff;border-color:rgba(255,255,255,0.2);}
    .btn-ghost:hover{background:rgba(255,255,255,0.18);}

    /* TOPBAR */
    /* =============================================
       TOPBAR — INDEX1 EXCLUSIVE (trust signal)
    ============================================= */
    .topbar {
      background: var(--teal-dark);
      color: #fff;
      text-align: center;
      padding: 8px 24px;
      font-family: 'Nunito', sans-serif;
      font-size: 0.83rem;
      font-weight: 700;
      letter-spacing: 0.03em;
    }

    .topbar a {
      color: var(--yellow);
    }

    .topbar a:hover {
      text-decoration: underline;
    }

    .green-dot {
      display: inline-block;
      width: 8px;
      height: 8px;
      background: #22c55e;
      border-radius: 50%;
      margin-right: 6px;
      animation: pulse 2s infinite;
      vertical-align: middle;
    }

    @keyframes pulse {

      0%,
      100% {
        box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.4);
      }

      50% {
        box-shadow: 0 0 0 6px rgba(34, 197, 94, 0);
      }
    }

    /* =============================================
       NAVBAR — INDEX2 structure (sticky backdrop-filter) + INDEX1 branding
    ============================================= */
    .site-header {
      position: sticky;
      top: 0;
      z-index: 1000;
      backdrop-filter: blur(12px);
      background: rgba(21, 122, 110, 0.95);
      border-bottom: 1px solid rgba(255, 255, 255, 0.12);
      box-shadow: 0 2px 20px rgba(0, 0, 0, 0.15);
    }

    .nav {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 16px;
      min-height: 72px;
      padding: 0;
    }

    .brand {
      display: flex;
      align-items: center;
      gap: 12px;
    }

    .brand img {
      height: 54px;
      width: auto;
      border-radius: 50%;
      background: #fff;
      padding: 3px;
      object-fit: contain;
    }

    .brand-text {
      line-height: 1.2;
    }

    .brand-name {
      font-family: 'Fredoka One', cursive;
      color: #fff;
      font-size: 1.2rem;
      white-space: nowrap;
    }

    .brand-sub {
      font-family: 'Nunito', sans-serif;
      font-size: 0.7rem;
      font-weight: 700;
      color: var(--yellow);
      text-transform: uppercase;
      letter-spacing: 0.1em;
    }

    .nav-links {
      display: flex;
      align-items: center;
      gap: 2px;
      list-style: none;
    }

    .nav-links>li {
      position: relative;
    }

    .nav-links a {
      color: #fff;
      font-weight: 700;
      font-size: 0.9rem;
      padding: 8px 12px;
      border-radius: 8px;
      transition: background 0.2s;
      display: block;
      white-space: nowrap;
    }

    .nav-links a:hover {
      background: rgba(255, 255, 255, 0.15);
    }

    .dropdown-toggle::after {
      content: ' ▾';
      font-size: 0.72rem;
      opacity: 0.8;
    }

    /* DROPDOWN FIX — hover gap bridge */
    .nav-links>li::after {
      content: '';
      position: absolute;
      top: 100%;
      left: 0;
      width: 100%;
      height: 12px;
    }

    .dropdown-menu {
      display: none;
      position: absolute;
      top: calc(100% + 8px);
      left: 0;
      background: #fff;
      border-radius: 14px;
      box-shadow: 0 8px 48px rgba(26, 158, 143, 0.18);
      min-width: 240px;
      padding: 8px;
      z-index: 2000;
      border: 1px solid rgba(26, 158, 143, 0.15);
      opacity: 0;
      pointer-events: none;
      transform: translateY(4px);
      transition: opacity 0.15s ease, transform 0.15s ease;
    }

    .dropdown-menu a {
      color: var(--dark);
      font-size: 0.88rem;
      padding: 10px 14px;
      border-radius: 10px;
      font-weight: 600;
      display: block;
    }

    .dropdown-menu a:hover {
      background: var(--teal-light);
      color: var(--teal-dark);
    }

    .nav-links>li:hover .dropdown-menu {
      display: block;
      opacity: 1;
      pointer-events: auto;
      transform: translateY(0);
    }

    .nav-actions {
      display: flex;
      align-items: center;
      gap: 8px;
    }

    .nav-login {
      background: rgba(255, 255, 255, 0.12);
      color: #fff;
      border: 1.5px solid rgba(255, 255, 255, 0.4);
      border-radius: 50px;
      padding: 8px 16px;
      font-family: 'Nunito', sans-serif;
      font-size: 0.82rem;
      font-weight: 700;
      display: flex;
      align-items: center;
      gap: 6px;
      transition: all 0.2s;
      cursor: pointer;
      white-space: nowrap;
    }

    .nav-login:hover {
      background: rgba(255, 255, 255, 0.25);
      border-color: #fff;
    }

    .nav-cta-btn {
      background: var(--yellow);
      color: var(--dark);
      border: none;
      border-radius: 50px;
      padding: 10px 20px;
      font-family: 'Fredoka One', cursive;
      font-size: 0.9rem;
      cursor: pointer;
      white-space: nowrap;
      transition: all 0.2s;
    }

    .nav-cta-btn:hover {
      background: var(--yellow-dark);
      transform: translateY(-1px);
    }

    /* INDEX2 hamburger (SVG icon, cleaner) */
    .mobile-menu-btn {
      display: none;
      background: none;
      border: none;
      color: #fff;
      cursor: pointer;
      padding: 8px;
    }

    .mobile-menu-btn svg {
      width: 26px;
      height: 26px;
    }
    @media(max-width:860px){
      .nav-links,.nav-actions{display:none;flex-direction:column;align-items:flex-start;gap:8px;width:100%;padding:10px 0;}
      .nav-links.active,.nav-actions.active{display:flex;}
      .mobile-menu-btn{display:block;}
      .site-header .nav{flex-wrap:wrap;}
      .dropdown-menu{position:static;box-shadow:none;border:none;background:#fff;border-radius:14px;padding:8px;opacity:1;pointer-events:auto;transform:none;display:none;min-width:unset;}
      .dropdown-menu a{color:#1a2e2a;}
      .dropdown-menu a:hover{background:#e8f7f5;color:#157a6e;}
      .nav-links li.open .dropdown-menu{display:block;}
    }

    /* PAGE HERO */
    .page-hero{background:linear-gradient(135deg,var(--teal-dark) 0%,var(--teal) 100%);padding:64px 0 56px;position:relative;overflow:hidden;}
    .page-hero::before{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.04'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");}
    .page-hero-inner{position:relative;z-index:1;}
    .page-hero .eyebrow{display:inline-flex;align-items:center;gap:8px;padding:5px 14px;border:1px solid rgba(255,255,255,0.3);border-radius:50px;background:rgba(255,255,255,0.12);color:var(--yellow);font-size:0.8rem;font-weight:800;text-transform:uppercase;letter-spacing:0.08em;margin-bottom:16px;}
    .page-hero h1{color:#fff;font-size:clamp(2.2rem,5vw,3.2rem);margin-bottom:12px;}
    .page-hero p{color:rgba(255,255,255,0.85);font-size:1.05rem;max-width:560px;}

    /* FILTER BAR */
    .filter-bar-wrap{background:var(--gray-light);border-bottom:1px solid var(--line);padding:18px 0;position:sticky;top:72px;z-index:900;overflow-x:hidden;}
    .filter-bar{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;padding:0 16px;}
    .filter-label{font-size:0.78rem;font-weight:800;text-transform:uppercase;letter-spacing:0.08em;color:var(--gray);margin-right:4px;white-space:nowrap;flex-shrink:0;}
    .filter-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:7px 14px;border-radius:50px;border:2px solid var(--line);background:#fff;color:var(--dark);font-family:'Nunito',sans-serif;font-size:0.8rem;font-weight:800;cursor:pointer;transition:all 0.2s;white-space:nowrap;min-width:140px;text-align:center;}
    .filter-btn:hover{border-color:var(--teal);color:var(--teal);background:var(--teal-light);}
    .filter-btn.active{background:var(--teal);border-color:var(--teal);color:#fff;box-shadow:0 2px 12px rgba(26,158,143,0.3);}
    .filter-btn .cat-badge{font-size:0.7rem;font-weight:800;padding:1px 7px;border-radius:50px;}
    .filter-btn.active .cat-badge{background:rgba(255,255,255,0.25);color:#fff;}
    .filter-btn:not(.active) .cat-badge{background:var(--teal-light);color:var(--teal-dark);}
    @media(max-width:640px){.filter-btn{padding:6px 11px;font-size:0.75rem;}.filter-bar-wrap{top:72px;}}
      h1, h2, h3, h4 { text-wrap: balance; }

    /* LAYOUT */
    .blog-layout{padding:44px 0 80px;display:grid;grid-template-columns:1fr 310px;gap:44px;align-items:start;}
    .breadcrumb{padding:14px 0 0;}
    .breadcrumb ol{display:flex;align-items:center;gap:6px;list-style:none;flex-wrap:wrap;}
    .breadcrumb li{font-size:0.82rem;color:var(--gray);display:flex;align-items:center;gap:6px;}
    .breadcrumb li a{color:var(--teal);font-weight:700;}
    .breadcrumb li+li::before{content:'/';opacity:0.5;}

    /* ARTICLES */
    .blog-article{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);margin-bottom:28px;transition:box-shadow 0.2s;max-width:100%;width:100%;}
    .blog-article:hover{box-shadow:var(--shadow-lg);}
    .blog-article:last-of-type{margin-bottom:0;}
    .blog-article.hidden{display:none;}
    .article-header{padding:28px 32px 22px;border-bottom:1px solid var(--line);}
    .post-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px;}
    .post-category-tag{background:var(--teal);color:#fff;font-size:0.7rem;font-weight:800;text-transform:uppercase;letter-spacing:0.07em;padding:4px 10px;border-radius:50px;white-space:nowrap;}
    .post-date{color:var(--gray);font-size:0.8rem;font-weight:700;display:flex;align-items:center;gap:6px;margin-left:auto;}
    .article-header h1{font-size:clamp(1.4rem,2.6vw,1.9rem);color:var(--dark);margin-bottom:8px;}
    .article-intro{color:var(--gray);font-size:0.97rem;line-height:1.7;}
    .article-content{padding:28px 32px;max-width:100%;}
    .article-content h2{font-size:1.28rem;color:var(--teal-dark);margin:24px 0 8px;}
    .article-content h2:first-child{margin-top:0;}
    .article-content p{color:#374151;font-size:0.95rem;line-height:1.75;margin-bottom:12px;}
    .article-content p:last-child{margin-bottom:0;}
    .article-content strong{color:var(--dark);font-weight:800;}
    .article-content ol,.article-content ul{padding-left:20px;margin-bottom:12px;}
    .article-content li{color:#374151;font-size:0.95rem;line-height:1.75;margin-bottom:5px;}

    /* CARDS */
    .info-card{border-radius:var(--radius);padding:16px 20px;margin:18px 0;display:flex;gap:12px;align-items:flex-start;}
    .info-card.green{background:var(--teal-light);border-left:4px solid var(--teal);}
    .info-card.yellow{background:#fffbeb;border-left:4px solid var(--yellow);}
    .info-card.purple{background:#f5f3ff;border-left:4px solid #7c5cbf;}
    .info-card-icon{font-size:1.25rem;flex-shrink:0;margin-top:2px;}
    .info-card-text h3{font-family:'Fredoka One',cursive;font-size:0.93rem;color:var(--teal-dark);margin-bottom:4px;}
    .info-card.yellow .info-card-text h3{color:#92400e;}
    .info-card.purple .info-card-text h3{color:#5b21b6;}
    .info-card-text p{font-size:0.87rem;color:#374151;margin:0;line-height:1.6;}
    .referral-block{background:linear-gradient(135deg,var(--teal-dark),var(--teal));border-radius:var(--radius-lg);padding:22px 26px;margin:20px 0;color:#fff;overflow:hidden;max-width:100%;}
    .referral-block h3{font-size:1.1rem;color:#fff;margin-bottom:6px;}
    .referral-block>p{color:rgba(255,255,255,0.88);font-size:0.9rem;margin-bottom:12px;}
    .referral-companies{display:flex;flex-direction:column;gap:9px;}
    .company-row{background:rgba(255,255,255,0.12);border:1px solid rgba(255,255,255,0.2);border-radius:12px;padding:12px 15px;display:flex;align-items:center;gap:11px;flex-wrap:wrap;}
    .company-row-icon{font-size:1.3rem;flex-shrink:0;}
    .company-row-info{flex:1;min-width:0;}
    .company-row-info h4{font-family:'Fredoka One',cursive;font-size:0.93rem;color:#fff;margin-bottom:2px;}
    .company-row-info p{font-size:0.8rem;color:rgba(255,255,255,0.8);margin:0;}
    .company-row-phone{background:var(--yellow);color:var(--dark);font-family:'Fredoka One',cursive;font-size:0.82rem;padding:7px 13px;border-radius:50px;white-space:nowrap;flex-shrink:0;transition:background 0.2s,transform 0.2s;}
    .company-row-phone:hover{background:var(--yellow-dark);transform:translateY(-1px);}

    /* SOURCES */
    .sources-block{background:var(--gray-light);border-radius:var(--radius);padding:16px 20px;margin:20px 0 0;border:1px solid var(--line);}
    .sources-block h3{font-family:'Fredoka One',cursive;font-size:0.9rem;color:var(--gray);margin-bottom:8px;display:flex;align-items:center;gap:6px;}
    .sources-block ol{padding-left:16px;}
    .sources-block li{font-size:0.78rem;color:var(--gray);line-height:1.55;margin-bottom:4px;}
    .sources-block li a{color:var(--teal);text-decoration:underline;word-break:break-all;overflow-wrap:anywhere;}

    .article-footer{padding:16px 32px;background:var(--gray-light);border-top:1px solid var(--line);}
    .article-tags{display:flex;align-items:center;flex-wrap:wrap;gap:6px;}
    .tag{background:var(--teal-light);color:var(--teal-dark);font-size:0.73rem;font-weight:800;text-transform:uppercase;letter-spacing:0.06em;padding:3px 10px;border-radius:50px;border:1px solid var(--line);}

    /* NO RESULTS */
    .no-results{display:none;text-align:center;padding:56px 24px;color:var(--gray);}
    .no-results.visible{display:block;}
    .no-results h3{font-size:1.25rem;color:var(--dark);margin-bottom:8px;}

    /* SIDEBAR */
    .sidebar{display:flex;flex-direction:column;gap:22px;}
    .sidebar-widget{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow);}
    .widget-header{background:var(--teal-dark);padding:12px 18px;}
    .widget-header h3{font-size:0.97rem;color:#fff;}
    .widget-body{padding:16px 18px;}
    .recent-post-item{display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-bottom:1px solid var(--line);}
    .recent-post-item:last-child{border-bottom:none;padding-bottom:0;}
    .recent-post-dot{width:7px;height:7px;border-radius:50%;background:var(--teal);flex-shrink:0;margin-top:7px;}
    .recent-post-item a{font-size:0.83rem;font-weight:700;color:var(--dark);line-height:1.4;transition:color 0.2s;}
    .recent-post-item a:hover{color:var(--teal);}
    .recent-post-date{font-size:0.72rem;color:var(--gray);margin-top:2px;}
    .cta-widget{background:linear-gradient(135deg,var(--teal-dark),var(--teal));border:none;}
    .cta-widget .widget-body{padding:20px 18px;text-align:center;}
    .cta-widget h3{font-family:'Fredoka One',cursive;color:#fff;font-size:1.1rem;margin-bottom:7px;}
    .cta-widget p{color:rgba(255,255,255,0.85);font-size:0.84rem;line-height:1.55;margin-bottom:13px;}
    .cta-widget .btn{width:100%;}
    .category-list{list-style:none;}
    .category-list li{border-bottom:1px solid var(--line);}
    .category-list li:last-child{border-bottom:none;}
    .category-list a{display:flex;justify-content:space-between;align-items:center;padding:8px 4px;font-weight:700;font-size:0.86rem;color:var(--dark);transition:color 0.2s;cursor:pointer;}
    .category-list a:hover{color:var(--teal);}
    .cat-count{background:var(--teal-light);color:var(--teal-dark);font-size:0.72rem;font-weight:800;padding:2px 7px;border-radius:50px;}
    .footer-contact-item{display:flex;align-items:center;gap:9px;margin-bottom:8px;font-size:0.84rem;}
    .footer-contact-item i{color:var(--teal-mid);width:15px;flex-shrink:0;}
    .footer-contact-item a:hover{color:var(--yellow);}

    /* PARTNERSHIP TABLE */
    .partner-badge{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;font-family:'Fredoka One',cursive;font-size:0.82rem;padding:5px 14px;border-radius:50px;letter-spacing:0.04em;margin-bottom:16px;}
    .partner-intro-block{background:linear-gradient(135deg,var(--teal-dark),var(--teal));border-radius:var(--radius-lg);padding:26px 28px;margin:20px 0;color:#fff;overflow:hidden;max-width:100%;word-break:break-word;overflow-wrap:break-word;}
    .partner-intro-block h3{color:#fff;font-size:1.15rem;margin-bottom:8px;}
    .partner-intro-block p{color:rgba(255,255,255,0.88);font-size:0.92rem;line-height:1.65;margin-bottom:0;}
    .baps-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0;}
    .baps-info-card{background:var(--gray-light);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;overflow:hidden;max-width:100%;word-break:break-word;overflow-wrap:break-word;}
    .baps-info-card h4{font-family:'Fredoka One',cursive;font-size:0.88rem;color:var(--teal-dark);margin-bottom:6px;display:flex;align-items:center;gap:6px;}
    .baps-info-card p,.baps-info-card li{font-size:0.83rem;color:#374151;line-height:1.6;margin:0;}
    .baps-info-card ul{list-style:none;padding:0;}
    .baps-info-card li{padding:2px 0;}
    .discount-table-wrap{overflow-x:auto;margin:20px 0;border-radius:var(--radius);border:1px solid var(--line);box-shadow:var(--shadow);max-width:100%;}
    .discount-table{width:100%;border-collapse:collapse;font-size:0.88rem;}
    .discount-table thead tr{background:var(--teal-dark);color:#fff;}
    .discount-table thead th{padding:12px 16px;text-align:left;font-family:'Fredoka One',cursive;font-size:0.9rem;letter-spacing:0.03em;white-space:normal;word-break:break-word;}
    .discount-table tbody tr{border-bottom:1px solid var(--line);}
    .discount-table tbody tr:last-child{border-bottom:none;}
    .discount-table tbody tr:nth-child(even){background:var(--teal-light);}
    .discount-table tbody tr:nth-child(odd){background:#fff;}
    .discount-table td{padding:11px 16px;color:#374151;vertical-align:top;line-height:1.55;}
    .discount-table td:first-child{font-weight:800;color:var(--dark);}
    .discount-badge{display:inline-block;background:var(--teal);color:#fff;font-family:'Fredoka One',cursive;font-size:0.85rem;padding:3px 11px;border-radius:50px;white-space:nowrap;}
    .discount-badge.yellow{background:var(--yellow-dark);}
    .discount-badge.purple{background:#7c5cbf;}
    .proof-note{background:#fffbeb;border:1px solid #fcd34d;border-radius:var(--radius);padding:14px 18px;margin:16px 0;display:flex;gap:11px;align-items:flex-start;font-size:0.87rem;color:#92400e;}
    .proof-note strong{color:#78350f;}
    .store-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:18px 0;}
    .store-card{background:var(--gray-light);border:1px solid var(--line);border-radius:var(--radius-lg);padding:18px 20px;overflow:hidden;max-width:100%;word-break:break-word;overflow-wrap:anywhere;min-width:0;}
    .store-card h3{font-family:'Fredoka One',cursive;font-size:1.05rem;color:var(--teal-dark);margin-bottom:10px;display:flex;align-items:center;gap:8px;}
    .store-card-detail{display:flex;align-items:flex-start;gap:9px;font-size:0.84rem;color:#374151;margin-bottom:7px;line-height:1.5;word-break:break-word;overflow-wrap:anywhere;min-width:0;}
    .store-card-detail i{color:var(--teal-mid);width:14px;flex-shrink:0;margin-top:2px;}
    .store-card-detail a{color:var(--teal);font-weight:700;word-break:break-word;overflow-wrap:anywhere;}
    .store-card-detail a:hover{text-decoration:underline;}
    .store-hours-table{width:100%;font-size:0.8rem;border-collapse:collapse;margin-top:6px;}
    .store-hours-table tr td{padding:2px 0;}
    .store-hours-table td:first-child{font-weight:700;color:var(--dark);width:auto;min-width:80px;}
    .store-hours-table td:last-child{color:#374151;}
    @media(max-width:640px){.baps-info-grid{grid-template-columns:1fr;}.store-grid{grid-template-columns:1fr;}.discount-table thead th,.discount-table td{padding:9px 11px;}}

    /* CTA BANNER */
    .cta-banner{background:linear-gradient(135deg,var(--teal-dark) 0%,var(--teal) 100%);padding:72px 0;text-align:center;}
    .cta-banner h2{font-size:clamp(1.8rem,3.5vw,2.4rem);color:#fff;margin-bottom:12px;}
    .cta-banner p{color:rgba(255,255,255,0.85);font-size:1rem;margin-bottom:32px;max-width:560px;margin-left:auto;margin-right:auto;}
    .cta-btns{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;}

    /* FOOTER */
    footer{background:var(--dark);color:rgba(255,255,255,0.75);padding:64px 0 0;}
    .footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:40px;padding-bottom:48px;}
    .footer-logo-text{font-family:'Fredoka One',cursive;color:#fff;font-size:1.4rem;margin-bottom:12px;}
    .footer-logo-text span{color:var(--yellow);}
    .footer-desc{font-size:0.88rem;line-height:1.65;color:rgba(255,255,255,0.6);margin-bottom:20px;}
    .footer-social{display:flex;gap:10px;}
    .footer-social a{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,0.08);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,0.7);font-size:0.9rem;transition:background 0.2s,color 0.2s;}
    .footer-social a:hover{background:var(--teal);color:#fff;}
    .footer-col h4{font-family:'Fredoka One',cursive;color:#fff;font-size:1.05rem;margin-bottom:14px;}
    .footer-col ul{list-style:none;display:flex;flex-direction:column;gap:8px;}
    .footer-col ul li a{font-size:0.88rem;color:rgba(255,255,255,0.6);transition:color 0.2s;}
    .footer-col ul li a:hover{color:var(--yellow);}
    .footer-bottom{border-top:1px solid rgba(255,255,255,0.08);padding:20px 0;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:0.8rem;color:rgba(255,255,255,0.4);}

    @media(max-width:980px){
      .blog-layout{grid-template-columns:1fr;}
      .sidebar{display:grid;grid-template-columns:1fr 1fr;}
      .cta-widget{grid-column:1/-1;}
      .discount-table thead th{white-space:normal;}
    }
    @media(max-width:860px){
      .baps-info-grid{grid-template-columns:1fr !important;}
      .store-grid{grid-template-columns:1fr !important;}
    }
    @media(max-width:640px){
      .blog-layout{padding:28px 0 56px;grid-template-columns:1fr;}
      .article-header,.article-content,.article-footer{padding-left:16px;padding-right:16px;}
      .footer-grid{grid-template-columns:1fr;gap:28px;}
      .sidebar{grid-template-columns:1fr;}
      .post-meta{flex-direction:column;align-items:flex-start;}
      .post-date{margin-left:0;}
      .article-header h1{font-size:1.35rem;}
      .post-category-tag{font-size:0.68rem;}
      .company-row{flex-direction:column;}
      .baps-info-grid{grid-template-columns:1fr;}
      .store-grid{grid-template-columns:1fr;}
      .cta-btns{flex-direction:column;align-items:center;}
      .cta-btns .btn{width:auto;min-width:220px;justify-content:center;}
      section{padding-left:24px;padding-right:24px;}
      p, .spring-note, .spring-disclaimer, .cta-section p, .section-sub, .hero-sub, .page-hero p { text-wrap: balance; }
    }
  @media (max-width:430px){.topbar{font-size:0.75rem;padding:7px 10px;letter-spacing:0;}section{padding-top:38px;padding-bottom:38px;}.page-hero,.service-hero{padding:28px 0 22px;}.section-title{font-size:1.75rem;}h1{font-size:clamp(1.45rem,4vw,1.85rem);}.dropdown-menu{min-width:160px;}}@media (max-width:380px){.topbar{font-size:0.71rem;padding:6px 8px;}section{padding-top:30px;padding-bottom:30px;}.page-hero,.service-hero{padding:22px 0 16px;}.section-title{font-size:1.5rem;}h1{font-size:1.4rem;}}.float-bg{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0;}.float-bg span{position:absolute;bottom:-60px;opacity:0;animation:emojiFloat linear infinite;user-select:none;line-height:1;}@keyframes emojiFloat{0%{transform:translateY(0) rotate(-10deg);opacity:0;}8%{opacity:0.15;}88%{opacity:0.15;}100%{transform:translateY(-110vh) rotate(15deg);opacity:0;}}