/* Well2Wise reposition theme — SINGLE SOURCE OF TRUTH for the glass design
   Linked by all repositioned /private pages. Edit here, not inline per page. */

/* Keep the sticky header (and its mobile dropdown menu) above everything —
   the CTA section (.appdownload_section) uses z-index:99999 for the footer overlap,
   which otherwise covers the open mobile menu. */
.header_section{ z-index:100000; }

    .w2w-lead-card{background:#fff;border:1px solid #ececec;border-radius:16px;padding:22px;box-shadow:0 8px 30px rgba(0,0,0,.06);}
    .w2w-lead-title{font-size:1.4rem;font-weight:800;color:#F5820A;margin:0 0 6px;}
    .w2w-lead-sub{margin:0 0 16px;color:#444;font-size:.96rem;line-height:1.45;}
    .w2w-form .w2w-field{margin-bottom:12px;display:flex;flex-direction:column;}
    .w2w-form label{font-weight:600;font-size:.9rem;margin-bottom:5px;color:#222;}
    .w2w-opt{font-weight:400;color:#888;font-size:.8rem;}
    .w2w-form input[type=text],.w2w-form input[type=tel],.w2w-form input[type=email]{padding:12px 14px;border:1px solid #d5d5d5;border-radius:10px;font-size:1rem;width:100%;box-sizing:border-box;}
    .w2w-form input:focus{outline:none;border-color:#0D99FF;box-shadow:0 0 0 3px rgba(13,153,255,.15);}
    .w2w-consent{display:flex;gap:8px;align-items:flex-start;font-size:.82rem;color:#555;margin:6px 0 12px;line-height:1.4;}
    .w2w-consent input{margin-top:3px;}
    .w2w-turnstile{margin:10px 0;}
    .w2w-btn{background:#F5820A;color:#fff;border:none;border-radius:999px;padding:14px 22px;font-size:1.05rem;font-weight:800;cursor:pointer;width:100%;transition:background .15s;}
    .w2w-btn:hover{background:#e0740a;}
    .w2w-btn:disabled{opacity:.6;cursor:default;}
    .w2w-terms{font-size:.72rem;color:#888;line-height:1.4;margin:12px 0 0;}
    .w2w-terms a{color:#0D99FF;}
    .w2w-msg{border-radius:10px;padding:10px 14px;margin-bottom:12px;font-size:.9rem;}
    .w2w-msg.error{background:#fdecec;color:#b3261e;border:1px solid #f5c2c0;}
    .w2w-done{text-align:center;}
    .w2w-done h3{color:#15724a;font-size:1.4rem;margin:0 0 8px;}
    .w2w-done p{color:#444;line-height:1.5;margin:0 0 16px;}
    .w2w-stores{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;}
    .w2w-stores a{flex:1 1 140px;max-width:170px;}
    .w2w-stores img{width:100%;height:auto;}

    /* Hero eyebrow (distinct from the headline) */
    .hero_kicker{ text-transform:uppercase; letter-spacing:.08em; color:#5D5D5D; font-weight:800; font-size:.82rem; margin:0 0 12px; text-align:center; }
    @media (max-width:768px){ .hero_kicker{ text-align:left; } }

    /* Homepage layout tightening (reduce desktop whitespace) */
    .hero_container{ align-items:flex-start; }
    .hero_container .hero_content{ gap:18px; }
    .hero_trust{ list-style:none; padding:0; margin:6px 0 0; display:flex; flex-direction:column; gap:8px; }
    .hero_trust li{ position:relative; padding-left:24px; color:#5D5D5D; font-size:16px; line-height:1.4; }
    .hero_trust li::before{ content:"✓"; position:absolute; left:0; color:#F5820A; font-weight:800; }
    /* ===== Uniform vertical gap between cards (28px, all glass-card pages) =====
       The gap is the card's own bottom margin (.w2w-panel below). Card-sections add no
       vertical padding, so stacked panels (home, rewards, rapid) all sit 28px apart.
       Hero cards zero their margin and use the section's bottom padding instead, so the
       gap survives the mobile display:contents hero. */
    .hero_section{ padding-bottom:28px; }
    .hero_content.w2w-panel, .hero_container.w2w-panel{ margin-bottom:0; }
    .issues_section, .features_section, .appdownload_section{ padding-top:0; padding-bottom:0; }
    .features_container{ padding-bottom:0; }
    .features_container .features_notes{ padding:0 60px; }
    @media (max-width:992px){
      .hero_container{ align-items:stretch; }
    }

    /* ===== Option 3: glass theme ===== */
    body{
      background:
        radial-gradient(1000px 700px at 88% -140px, rgba(13,153,255,.10), transparent 60%),
        radial-gradient(900px 700px at -140px 42%, rgba(27,140,94,.09), transparent 60%),
        radial-gradient(1000px 800px at 108% 88%, rgba(249,130,46,.10), transparent 60%),
        #fbfcfe;
      background-attachment: fixed;
    }
    .w2w-panel{
      background: rgba(255,255,255,.55);
      border: 1px solid rgba(255,255,255,.75);
      border-radius: 24px;
      box-shadow: 0 12px 34px rgba(13,38,63,.07);
      -webkit-backdrop-filter: blur(20px);
      backdrop-filter: blur(20px);
      padding: 40px 44px;
      margin: 0 0 28px;
    }
    .w2w-p-blue{ background: linear-gradient(rgba(13,153,255,.05),rgba(13,153,255,.05)), rgba(255,255,255,.55); }
    .w2w-p-green{ background: linear-gradient(rgba(27,140,94,.05),rgba(27,140,94,.05)), rgba(255,255,255,.55); }
    .w2w-p-orange{ background: linear-gradient(rgba(249,130,46,.05),rgba(249,130,46,.05)), rgba(255,255,255,.55); }
    /* Bullet colour follows the panel tint (blue stays the default #0D99FF) */
    .w2w-p-green .booktreatment-list li::before{ color:#1B8C5E; }
    .w2w-p-orange .booktreatment-list li::before{ color:#F5820A; }
    .w2w-sec-head h2{ margin:0 0 10px; }
    .w2w-sec-sub{ font-size:1.18rem; color:#3d3d3d; line-height:1.5; margin:0 0 26px; max-width:900px; }
    .w2w-sec-body{ display:grid; gap:40px; align-items:start; }
    .w2w-sec-body.img-right{ grid-template-columns: 1fr minmax(300px, 480px); }
    .w2w-sec-body.img-left{ grid-template-columns: minmax(300px, 480px) 1fr; }
    .w2w-sec-img img{ width:100%; display:block; border-radius:16px; }
    .w2w-sec-side > a{ display:inline-block; margin-top:12px; }
    .w2w-sec-more{ margin:26px 0 0; }
    @media (max-width:900px){
      .w2w-panel, .w2w-lead-card{ padding:24px 22px; }
      .w2w-sec-body.img-right, .w2w-sec-body.img-left{ grid-template-columns:1fr; gap:24px; }
      .w2w-sec-body.img-right .w2w-sec-img{ order:-1; }
    }
    /* Hero: visual fills the left column; form pins on desktop */
    .w2w-hero-visual{ margin-top:6px; }
    .w2w-hero-visual img{ width:100%; display:block; border-radius:20px; box-shadow:0 12px 34px rgba(13,38,63,.10); }
    .w2w-hero-visual-m{ display:none; }   /* mobile-only image; shown at <=768px */
    @media (min-width:993px){
      .hero_carousel-container{ position:sticky; top:100px; align-self:flex-start; }
    }
    .w2w-lead-card{
      background: rgba(255,255,255,.65);
      border: 1px solid rgba(255,255,255,.8);
      -webkit-backdrop-filter: blur(20px);
      backdrop-filter: blur(20px);
      box-shadow: 0 12px 34px rgba(13,38,63,.08);
    }
    @media (prefers-reduced-motion: reduce){
      html{ scroll-behavior:auto; }
    }

    /* Feature tiles (One team section) */
    .w2w-center{ text-align:center; }
    .w2w-center .w2w-sec-sub{ margin-left:auto; margin-right:auto; }
    .w2w-feat-grid{ display:grid; grid-template-columns:repeat(3, 1fr); gap:32px; margin-top:6px; }
    .w2w-feat img{ width:100%; display:block; border-radius:16px; margin-bottom:14px; }
    .w2w-feat h3{ margin:0 0 8px; }
    @media (max-width:900px){
      .w2w-feat-grid{ grid-template-columns:1fr; gap:26px; }
    }

    /* Bottom CTA banner */
    .w2w-cta{
      display:grid; grid-template-columns: 1.4fr 1fr; gap:48px; align-items:center;
      background: linear-gradient(100deg, #F5820A, #FBB03B);
      border-radius:24px; padding:48px 56px;
      box-shadow:0 12px 34px rgba(13,38,63,.12);
    }
    .w2w-cta-text h2{ color:#fff; margin:0 0 14px; text-align:left; }
    .w2w-cta-text p{ color:rgba(255,255,255,.94); margin:0; line-height:1.55; font-size:1.05rem; }
    .w2w-cta-actions{ display:flex; flex-direction:column; align-items:center; gap:20px; }
    .w2w-cta-btn{
      display:inline-block; background:rgba(255,255,255,.92); color:#F5820A; font-weight:800;
      font-size:1.1rem; padding:15px 34px; border-radius:999px; text-decoration:none; white-space:nowrap;
      border:1px solid rgba(255,255,255,.9); box-shadow:0 8px 22px rgba(13,38,63,.12);
      transition: background .15s;
    }
    .w2w-cta-btn:hover{ background:#fff; }
    .w2w-cta-stores{ display:flex; gap:14px; }
    .w2w-cta-stores a{ display:block; }
    .w2w-cta-stores img{ height:52px; width:auto; display:block; }
    @media (max-width:900px){
      .w2w-cta{ grid-template-columns:1fr; gap:26px; padding:24px 22px; text-align:center; }
      .w2w-cta-text h2{ text-align:center; }
      .w2w-cta-stores{ justify-content:center; flex-wrap:wrap; }
    }

    /* Mobile hero order: image -> form -> text card (text/benefits/links stay carded).
       Uses a separate mobile-only image so the desktop card (image + text) is untouched. */
    @media (max-width:768px){
      .hero_container{ display:flex; flex-direction:column; gap:18px; }
      /* Home hero */
      .home_hero .w2w-hero-visual-d{ display:none; }                       /* hide the in-card image */
      .home_hero .w2w-hero-visual-m{ display:block; order:1; margin:0; }   /* standalone image, first */
      .home_hero .hero_carousel-container{ width:100%; position:static; order:2; }  /* form */
      /* card: text, benefits, links — restore card padding (style.css zeroes it to 0 8px on mobile) */
      .home_hero .hero_content.w2w-panel{ order:3; padding:24px 22px; }
      /* Other image heroes (e.g. Pricing & Rewards): image first, then text, then bullets */
      .hero_container:not(.home_hero) .hero_carousel-container{ order:-1; width:100%; position:static; }
    }

  

    /* --- folded in from rewards.html --- */
    .rw_feats{ display:flex; flex-direction:column; gap:22px; }
    .rw_img_link{ display:block; }
    .rw_img_link img{ border-radius:16px; box-shadow:0 10px 28px rgba(13,38,63,.10); display:block; }
    /* --- folded in from surgical_bundles.html --- */
    .w2w-cta-ghost{ background:rgba(255,255,255,.15); color:#fff; border:1.5px solid rgba(255,255,255,.6); box-shadow:none; }
    .w2w-cta-ghost:hover{ background:rgba(255,255,255,.25); }

    /* ===== Shared typography tokens (consistency) ===== */
    :root{ --w2w-ink:#3d3d3d; --w2w-ink-soft:#5f5f5f; --w2w-ink-mute:#8a8a8a; }
    body{ color: var(--w2w-ink); }
    .content_paragraph,
    .features_details,
    .features_notes,
    .issues_container .issue_content,
    .rewards-list, .rewards-list li,
    .booktreatment-list, .booktreatment-list li,
    .w2w-sec-sub,
    .w2w-lead-sub{ color: var(--w2w-ink); }
    .w2w-terms, .w2w-opt, .lp_hint{ color: var(--w2w-ink-mute); }
    /* consistent sub-heading (card / feature) size */
    .w2w-feat h3, .features_list .feature_item h3, .issues_section h3{ font-size:24px; line-height:1.3; }

    /* ===== Glass cards for the classic text pages (faqs / support / privacy) =====
       Selectors match the page CSS specificity (.faq-main_container .faq_block etc.)
       and win by load order (reposition.css is linked after faqs.css/privacy_policy.css). */
    .faq-main_container,
    .privacy-policy_container{ gap:28px; padding-bottom:28px; }
    .faq-main_container .faq_block,
    .privacy-policy_container .privacy-policy-block{
      background: rgba(255,255,255,.55);
      border: 1px solid rgba(255,255,255,.75);
      border-radius: 24px;
      box-shadow: 0 12px 34px rgba(13,38,63,.07);
      -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px);
      padding: 32px 36px;
      margin: 0;
      gap: 22px;
    }
    /* unify body text to the ink token (override the pages' #5D5D5D) */
    .privacy-policy_container .privacy-policy-block .insider-block,
    .privacy-policy_container .privacy-policy-block .insider-block p,
    .faq-main_container .faq_block .faq-question .question,
    .faq-main_container .faq_block .faq-question .answer{ color: var(--w2w-ink); }
    /* privacy/support hero heading — give the h1 a clean styled look */
    .title h1{
      color:#5D5D5D; font-size:34px; font-weight:800; line-height:1.2; margin:0;
    }
    @media (max-width:900px){
      .faq-main_container .faq_block,
      .privacy-policy_container .privacy-policy-block{ padding:24px 22px; }
      .title h1{ font-size:26px; }
    }
