/* Thrive Health Benefits — static stylesheet (no CSS variables) */
  
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    *{animation-duration:0.001ms !important; animation-iteration-count:1 !important; transition-duration:0.001ms !important;}
  }
  body{margin:0; overflow-x:hidden; -webkit-text-size-adjust:100%; background:#FEFDFB; color:#2A3542; font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif; font-size:16.5px; line-height:1.65; -webkit-font-smoothing:antialiased;}
  img,svg{max-width:100%;}
  img{display:block; height:auto;}
  a{color:inherit;}
  .wrap{width:100%; max-width:1200px; margin:0 auto; padding:0 28px;}
  h1,h2,h3{font-family:'Fraunces', Georgia, serif; font-weight:600; margin:0; color:#283E5D;}
  .eyebrow{font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif; font-size:13px; letter-spacing:0.1em; text-transform:uppercase; color:#C7863F; font-weight:700;}
  :focus-visible{outline:2px solid #DB995A; outline-offset:3px; border-radius:2px;}

  /* utility top bar */
  .topbar{background:#283E5D; color:#fff; text-align:center; padding:9px 16px; font-size:13.5px;}
  .topbar a{color:#fff; font-weight:700; text-decoration:underline;}

  /* NAV */
  header.nav{position:sticky; top:0; z-index:50; background:rgba(254,253,251,0.92); backdrop-filter:blur(8px); border-bottom:1px solid rgba(40,62,93,0.12);}
  .nav-inner{display:flex; align-items:center; justify-content:space-between; padding:14px 28px; max-width:1200px; margin:0 auto;}
  .brand{display:flex; align-items:center; gap:10px; text-decoration:none;}
  .brand img{height:60px; width:auto; border-radius:6px;}
  nav.links{display:flex; gap:26px; align-items:center;}
  nav.links a{font-size:14.5px; text-decoration:none; color:#5B6774; font-weight:500;}
  nav.links a:hover{color:#283E5D;}
  .cta-btn{background:#DB995A; color:#1B2C44; padding:12px 22px; border-radius:100px; text-decoration:none; font-size:14.5px; font-weight:700; white-space:nowrap; transition:background .2s ease, transform .2s ease; display:inline-flex; align-items:center; gap:8px;}
  .cta-btn:hover{background:#C7863F; transform:translateY(-1px); color:#fff;}
  .cta-btn.outline{background:transparent; border:1.5px solid #283E5D; color:#283E5D;}
  .cta-btn.outline:hover{background:#283E5D; color:#fff;}
  .cta-btn.light{background:#fff; color:#283E5D;}
  .menu-toggle{display:none; background:none; border:none; cursor:pointer; padding:10px; margin:-10px -10px -10px 0;}
  .menu-toggle span{display:block; width:22px; height:2px; background:#283E5D; margin:5px 0;}

  /* floating call button */
  .float-call{position:fixed; right:22px; bottom:22px; z-index:60; background:#57A773; color:#fff; padding:15px 22px; border-radius:100px; text-decoration:none; font-weight:700; font-size:14.5px; box-shadow:0 10px 26px rgba(87,167,115,0.4); display:flex; align-items:center; gap:9px;}
  .float-call:hover{background:#489a63;}
  

  /* image placeholder boxes */
  .img-ph{width:100%;  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; }
  .img-ph svg{opacity:0.55;}
  .img-ph img{ border-radius:16px; }
  .img-ph .cap{font-size:12.5px; font-style:italic; max-width:220px; line-height:1.4;}

  section{position:relative;}
  .section{padding:80px 0;}
  .section.tight{padding:56px 0;}
  .section-head{ margin-bottom:30px;}
  .section-head h2{font-size:clamp(26px,3.2vw,38px); margin-top:12px; letter-spacing:-0.01em;}
  .section-head p{color:#5B6774; font-size:16px; margin-top:8px;}
  .bg-tint{background:#EEF5F9;}
  .bg-warm{background:#FBF7F1;}
  .section-head.section-head-w-img {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 30px;
    margin-bottom: 50px;
}
.section-head-img img {
    max-width: 500px;
    border-radius: 10px;
}
@media (max-width: 1024px){
  .section-head-img img {
      max-width: 380px;
      border-radius: 10px;
  }
}
@media (max-width: 800px){
    .section-head.section-head-w-img{
        flex-direction: column;
        align-items: flex-start;
        gap: 5px
    }
}
  /* call CTA strip (reusable) */
  .call-strip{display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; background:#283E5D; border:1.5px solid rgba(40,62,93,0.12); border-radius:16px; padding:22px 26px; margin-top:44px;}
  .call-strip p{margin:0; font-size:15.5px; color:#fff; font-weight:600;}
  .call-strip span{display:block; font-size:13px; color:#fff; font-weight:400; margin-top:2px;}

  /* HERO */
  .hero{padding:60px 0 70px;}
  .hero-inner{display:grid; grid-template-columns:1fr 0.95fr; gap:48px; align-items:center;}
  .hero h1{font-size:clamp(32px,4.4vw,50px); line-height:1.14; letter-spacing:-0.01em; margin:16px 0 20px;}
  .hero h1 em{font-style:normal; color:#C7863F;}
  .hero p.lede{font-size:17.5px; color:#5B6774; max-width:480px; margin:0 0 30px;}
  .hero-cta-row{display:flex; gap:14px; flex-wrap:wrap; align-items:center; margin-bottom:18px;}
  .phone-big{display:inline-flex; align-items:baseline; gap:8px; font-family:'Fraunces', Georgia, serif; font-size:26px; color:#283E5D; text-decoration:none; font-weight:600;}
  .phone-big span{font-size:13px; font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif; color:#5B6774; font-weight:500;}
  .hero-note{font-size:13.5px; color:#5B6774;}
  .hero .img-ph{ width:100%;}

  /* trust badges row */
  .badge-row{display:flex; gap:22px; flex-wrap:wrap; margin-top:30px;}
  .badge{display:flex; align-items:center; gap:9px; font-size:13.5px; color:#283E5D; font-weight:600;}
  .badge .dot{width:8px; height:8px; border-radius:50%; background:#57A773;}

  /* contrast grid */
  .contrast-grid{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
  .contrast-col{padding:32px 30px; border-radius:18px;}
  .contrast-col.bad{background:#FBF7F1; border:1.5px solid rgba(40,62,93,0.12);}
  .contrast-col.good{background: #ffdbb9; border: transparent;}
  .contrast-col h3{font-size:18px; margin-bottom:14px; font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif; font-weight:700;}
  .contrast-col.bad h3{color:#5B6774;}
  .contrast-col.good h3{color:#C7863F;}
  .contrast-col ul{padding-left:0; list-style:none; margin:0; display:flex; flex-direction:column; gap:12px;}
  .contrast-col li{font-size:14.5px; padding-left:22px; position:relative; line-height:1.55; color:#5B6774;}
  .contrast-col.bad li:before{content:"–"; position:absolute; left:0; color:#A6A296; font-weight:700;}
  .contrast-col.good li:before{content:"♥"; position:absolute; left:0; color:#57A773; font-size:13px; top:2px;}
  @media (max-width:720px){.contrast-grid{grid-template-columns:1fr;}}

  /* agents */
  .agent-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:26px;}
  .agent-card{background:#fff; border:1px solid rgba(40,62,93,0.12); border-radius:18px; overflow:hidden;}
  .agent-card .img-ph{border-radius:0; aspect-ratio:1/1; border:none; border-bottom:1.5px dashed rgba(40,62,93,0.2);}
  .agent-body{padding:22px 24px;}
  .agent-body h3{font-size:18px; font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif; font-weight:700; margin-bottom:4px;}
  .agent-role{font-size:13px; color:#C7863F; font-weight:600; margin-bottom:12px;}
  .agent-body p{font-size:14.5px; color:#5B6774; margin:0; font-style:italic;}
  @media (max-width:900px){.agent-grid{grid-template-columns:1fr;}}

  /* steps */
  .steps{display:grid; grid-template-columns:repeat(4,1fr); gap:24px;}
  .step{background:#fff; border-radius:16px; padding:24px 22px; border:1px solid rgba(40,62,93,0.12);}
  .step .num{font-family:'Fraunces', Georgia, serif; font-size:22px; color:#C7863F; font-weight:600;}
  .step h3{font-size:16.5px; margin:10px 0 8px; font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif; font-weight:700;}
  .step p{color:#5B6774; font-size:14px; margin:0;}
  @media (max-width:900px){.steps{grid-template-columns:1fr 1fr;}}
  @media (max-width:560px){.steps{grid-template-columns:1fr;}}

  /* solutions */
  .solutions{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
  .sol-card{border-radius:18px; overflow:hidden; border:1px solid rgba(40,62,93,0.12); background:#fff;}
  .sol-card .img-ph{border-radius:0; aspect-ratio:16/10; border:none; border-bottom:1.5px dashed rgba(40,62,93,0.2);}
  .sol-body{padding:26px 26px 28px;}
  .sol-body h3{font-size:20px; margin-bottom:10px; font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif; font-weight:700;}
  .sol-body p{color:#5B6774; font-size:14.5px; margin:0;}
  @media (max-width:900px){.solutions{grid-template-columns:1fr;}}

  /* why choose (formerly trust stats) */
  .why-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:22px;}
  .why-item{text-align:left;}
  .why-item .ico{width:40px; height:40px; border-radius:10px; background:#fff; border:1px solid rgba(40,62,93,0.12); display:flex; align-items:center; justify-content:center; margin-bottom:14px;}
  .why-item h3{font-size:15.5px; font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif; font-weight:700; margin-bottom:6px;}
  .why-item p{font-size:13.5px; color:#5B6774; margin:0;}
  @media (max-width:900px){.why-grid{grid-template-columns:1fr 1fr;}}
  @media (max-width:560px){.why-grid{grid-template-columns:1fr;}}

  /* educational - simplified */
  .edu-list{display:grid; grid-template-columns:repeat(2,1fr); gap:22px;}
  .edu-item{background:#fff; border:1px solid rgba(40,62,93,0.12); border-radius:16px; padding:24px;}
  .edu-item h3{font-size:16px; font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif; font-weight:700; margin-bottom:8px;}
  .edu-item p{color:#5B6774; font-size:14.5px; margin:0;}
  @media (max-width:720px){.edu-list{grid-template-columns:1fr;}}

  /* stories */
  .stories{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
  .story{background:#fff; border:1px solid rgba(40,62,93,0.12); border-radius:18px; overflow:hidden;}
  .story .img-ph{border-radius:0; aspect-ratio:4/3; border:none; }
  .story-body{padding:22px 24px;}
  .story .tag{font-size:12px; letter-spacing:0.06em; text-transform:uppercase; color:#C7863F; font-weight:700;}
  .story h3{font-size:17px; margin:10px 0 8px; font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif; font-weight:700;}
  .story p{font-size:14px; color:#5B6774; margin:0;}
  .story-note{font-size:12.5px; color:#5B6774; margin-top:30px; font-style:italic;}
  @media (max-width:900px){.stories{grid-template-columns:1fr;}}

  /* comparison */
  table.compare{width:100%; border-collapse:collapse; background:#fff; border-radius:16px; overflow:hidden; border:1px solid rgba(40,62,93,0.12);}
  table.compare th, table.compare td{padding:14px 16px; text-align:left; font-size:14px; border-bottom:1px solid rgba(40,62,93,0.12);}
  table.compare thead th{background:#FBF7F1; font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif; font-weight:700; color:#283E5D; font-size:13px;}
  table.compare tbody th{font-weight:600; color:#283E5D; width:24%;}
  table.compare{min-width:640px;}
  table.compare td{color:#5B6774;}
  table.compare td.win{color:#57A773; font-weight:700;}
  table.compare tr:last-child td, table.compare tr:last-child th{border-bottom:none;}
  .table-scroll{overflow-x:auto;}

  /* careers */
  .careers-grid{display:grid; grid-template-columns:1fr 1fr; gap:44px; align-items:flex-start;}
  .careers-grid .img-ph{aspect-ratio:4/3; width:100%;}
  .role-list{display:flex; flex-direction:column;}
  .role{display:flex; justify-content:space-between; align-items:center; gap:16px; padding:20px 0; border-top:1px solid rgba(40,62,93,0.12);}
  .role:last-child{border-bottom:1px solid rgba(40,62,93,0.12);}
  .role .rt h4{margin:0 0 5px; font-size:16px; font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif; font-weight:700; color:#283E5D;}
  .role .rt span{font-size:13px; color:#5B6774;}
  .role a{font-size:14px; font-weight:700; color:#283E5D; text-decoration:none; white-space:nowrap; border-bottom:1.5px solid #DB995A; padding-bottom:2px;}

  /* faq */
  .faq-item{border-top:1px solid rgba(40,62,93,0.12); padding:20px 0;}
  .faq-item:last-child{border-bottom:1px solid rgba(40,62,93,0.12);}
  .faq-item summary{cursor:pointer; list-style:none; font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif; font-weight:700; font-size:15.5px; color:#283E5D; display:flex; justify-content:space-between; align-items:center;}
  .faq-item summary::-webkit-details-marker{display:none;}
  .faq-item summary:after{content:"+"; font-size:20px; color:#C7863F; transition:transform .2s ease;}
  .faq-item[open] summary:after{transform:rotate(45deg);}
  .faq-item p{font-size:14.5px; color:#5B6774; margin:12px 0 0; max-width:680px;}

  /* final cta - the one dark moment */
  .final-cta{background:#1B2C44; color:#fff; text-align:center; padding:80px 0;}
  .final-cta h2{color:#fff; font-size:clamp(28px,3.6vw,42px); max-width:720px; margin:0 auto 16px;}
  .final-cta p{color:#C6D2E2; max-width:520px; margin:0 auto 30px; font-size:16.5px;}
  .final-cta-row{display:flex; gap:16px; justify-content:center; flex-wrap:wrap; align-items:center;}
  .final-phone{font-family:'Fraunces', Georgia, serif; font-size:30px; color:#fff; text-decoration:none;}

  footer{background:#FBF7F1; color:#5B6774; padding:56px 0 28px; font-size:13.5px; border-top:1px solid rgba(40,62,93,0.12);}
  .footer-grid{display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:36px; padding-bottom:36px; border-bottom:1px solid rgba(40,62,93,0.12);}
  .footer-grid h4{color:#283E5D; font-size:13.5px; margin:0 0 14px; font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif;}
  .footer-grid ul{list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:9px;}
  .footer-grid a{text-decoration:none; color:#5B6774;}
  .footer-grid a:hover{color:#283E5D;}
  .footer-brand img{height:60px; width:auto; margin-bottom:12px; border-radius:6px;}
  .footer-brand p{max-width:270px; line-height:1.6; font-size:13px;}
  .footer-bottom{display:flex; justify-content:space-between; align-items:center; padding-top:22px; flex-wrap:wrap; gap:10px; font-size:12px;}
  .consent{max-width:1200px; margin:0 auto; padding:0 28px 22px; font-size:11px; color:#8B8F8A; line-height:1.6;}
  @media (max-width:900px){.footer-grid{grid-template-columns:1fr 1fr;}}
  @media (max-width:560px){.footer-grid{grid-template-columns:1fr;}}

  /* two ways to reach us (hero sub-row) */
  .hero-cover{display:block; margin:12px 0 14px;}
  .two-ways{display:flex; gap:10px; align-items:center; flex-wrap:wrap; font-size:13.5px; color:#5B6774; margin-top:2px;}
  .two-ways strong{color:#283E5D; font-weight:600;}

  /* who we help */
  .who-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:16px;}
  .who-card{background:#fff; border:1px solid rgba(40,62,93,0.12); border-radius:14px; padding:20px 22px; display:flex; gap:14px; align-items:flex-start;}
  .who-card .who-ico{flex:0 0 auto; width:36px; height:36px; border-radius:9px; background:#EEF5F9; display:flex; align-items:center; justify-content:center;}
  .who-card h3{font-size:15.5px; font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif; font-weight:700; margin:0 0 4px;}
  .who-card p{font-size:13.5px; color:#5B6774; margin:0;}
  @media (max-width:900px){.who-grid{grid-template-columns:1fr 1fr;}}
  @media (max-width:560px){.who-grid{grid-template-columns:1fr;}}

  /* checklist (what we'll help you compare) */
  .checklist{display:grid; grid-template-columns:1fr 1fr; gap:14px 32px; background:#fff; border:1px solid rgba(40,62,93,0.12); border-radius:18px; padding:30px 34px;}
  .checklist .ci{display:flex; gap:12px; align-items:flex-start;}
  .checklist .ci svg{flex:0 0 auto; margin-top:3px;}
  .checklist .ci h3{font-size:15px; font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif; font-weight:700; margin:0 0 3px;}
  .checklist .ci p{font-size:13.5px; color:#5B6774; margin:0;}
  @media (max-width:720px){.checklist{grid-template-columns:1fr; padding:26px 24px;}}

  /* when to call */
  .when-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
  .when-card{background:#fff; border:1px solid rgba(40,62,93,0.12); border-radius:16px; padding:26px 24px;}
  .when-card .tag{font-size:12px; letter-spacing:0.06em; text-transform:uppercase; color:#C7863F; font-weight:700;}
  .when-card h3{font-size:17px; margin:10px 0 8px; font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif; font-weight:700;}
  .when-card p{font-size:14px; color:#5B6774; margin:0;}
  @media (max-width:900px){.when-grid{grid-template-columns:1fr;}}

  /* ============ Modern UI & motion enhancements ============ */
  section[id]{scroll-margin-top:92px;}

  /* header elevation on scroll */
  header.nav{transition:box-shadow .3s ease, background .3s ease;}
  header.nav.scrolled{box-shadow:0 8px 30px -16px rgba(40,62,93,0.32); background:rgba(254,253,251,0.96);}

  /* animated nav underline */
  nav.links a{position:relative;}
  nav.links a::after{content:""; position:absolute; left:0; bottom:-5px; height:2px; width:0; background:#DB995A; border-radius:2px; transition:width .28s cubic-bezier(.2,.7,.2,1);}
  nav.links a:hover::after{width:100%;}

  /* buttons: press + soft glow */
  .cta-btn{box-shadow:0 8px 20px -12px rgba(219,153,90,0.7);}
  .cta-btn:active{transform:translateY(0);}
  .cta-btn.outline{box-shadow:none;}
  .phone-big{transition:color .2s ease;}
  .phone-big:hover{color:#C7863F;}
  a.cta-btn.secondary-btn {
    border: 1px solid #DB995A;
    background: #fff;
    color: #DB995A;
  }
  .col-actions {
    margin-top: 10px;
  }

  /* gradient accent on hero headline highlight */
  .hero h1 em{color:#C7863F; background:linear-gradient(92deg,#C7863F,#DB995A); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;}

  /* hero ambient wash + floating orbs */
  .hero{position:relative; overflow:hidden;}
  .hero::before{content:""; position:absolute; inset:-10% -10% auto -10%; height:120%; z-index:0; pointer-events:none;
    background:
      radial-gradient(620px 440px at 88% 6%, rgba(132,188,218,0.20), transparent 62%),
      radial-gradient(520px 420px at 6% 96%, rgba(219,153,90,0.13), transparent 60%);}
  .hero .wrap{position:relative; z-index:1;}
  .hero-orb{position:absolute; z-index:0; border-radius:50%; filter:blur(46px); pointer-events:none; opacity:.5;}
  .hero-orb.a{width:220px; height:220px; right:6%; top:14%; background:radial-gradient(circle at 30% 30%, rgba(132,188,218,0.55), transparent 70%); animation:floatA 13s ease-in-out infinite;}
  .hero-orb.b{width:180px; height:180px; left:-40px; bottom:6%; background:radial-gradient(circle at 40% 40%, rgba(219,153,90,0.45), transparent 70%); animation:floatB 16s ease-in-out infinite;}
  @keyframes floatA{0%,100%{transform:translate(0,0)}50%{transform:translate(-14px,18px)}}
  @keyframes floatB{0%,100%{transform:translate(0,0)}50%{transform:translate(16px,-16px)}}

  /* card elevation + hover lift */
  .sol-card,.who-card,.when-card,.story,.step{box-shadow:0 1px 2px rgba(40,62,93,0.05); transition:transform .38s cubic-bezier(.2,.7,.2,1), box-shadow .38s ease, border-color .38s ease;}
  .sol-card:hover,.who-card:hover,.when-card:hover,.story:hover,.step:hover{transform:translateY(-5px); box-shadow:0 22px 46px -20px rgba(40,62,93,0.30); border-color:rgba(219,153,90,0.55);}
  .contrast-col,.checklist,table.compare{transition:box-shadow .38s ease, transform .38s ease;}
  .contrast-col.good:hover{box-shadow:0 22px 46px -20px rgba(219,153,90,0.35); transform:translateY(-3px);}
  .who-card:hover .who-ico{background:#DB995A; transition:background .3s ease;}
  .who-ico{transition:background .3s ease;}

  /* step number as gradient badge */
  .step .num{display:inline-flex; align-items:center; justify-content:center; width:46px; height:46px; border-radius:50%; background:linear-gradient(140deg,#DB995A,#C7863F); color:#fff; font-size:18px; box-shadow:0 8px 18px -8px rgba(199,134,63,0.8);}

  /* faq open animation + hover */
  .faq-item summary{transition:color .2s ease;}
  .faq-item summary:hover{color:#C7863F;}
  .faq-item[open] > p{animation:faqIn .38s cubic-bezier(.2,.7,.2,1);}
  @keyframes faqIn{from{opacity:0; transform:translateY(-6px)} to{opacity:1; transform:none}}

  /* final CTA depth */
  .final-cta{position:relative; overflow:hidden;}
  .final-cta::before{content:""; position:absolute; inset:0; pointer-events:none;
    background:
      radial-gradient(620px 320px at 18% 0%, rgba(132,188,218,0.22), transparent 60%),
      radial-gradient(520px 320px at 92% 100%, rgba(219,153,90,0.18), transparent 62%);}
  .final-cta .wrap{position:relative; z-index:1;}
  .final-phone{display:inline-block; transition:transform .25s ease;}
  .final-phone:hover{transform:scale(1.04);}

  /* floating call button attention ring */
  .float-call{position:fixed;}
  .float-call::after{content:""; position:absolute; inset:0; border-radius:100px; background:#57A773; z-index:-1; animation:ring 2.6s ease-out infinite;}
  @keyframes ring{0%{transform:scale(1); opacity:.45}70%{transform:scale(1.55); opacity:0}100%{opacity:0}}

  /* ---- scroll reveal (progressive enhancement) ---- */
  .js .reveal{opacity:0; transform:translateY(22px); transition:opacity .7s cubic-bezier(.2,.7,.2,1), transform .7s cubic-bezier(.2,.7,.2,1);}
  .js .reveal.in{opacity:1; transform:none;}
  .js .reveal-stagger > *{opacity:0; transform:translateY(22px); transition:opacity .6s cubic-bezier(.2,.7,.2,1), transform .6s cubic-bezier(.2,.7,.2,1);}
  .js .reveal-stagger.in > *{opacity:1; transform:none;}
  .js .reveal-stagger.in > *:nth-child(1){transition-delay:.04s}
  .js .reveal-stagger.in > *:nth-child(2){transition-delay:.12s}
  .js .reveal-stagger.in > *:nth-child(3){transition-delay:.20s}
  .js .reveal-stagger.in > *:nth-child(4){transition-delay:.28s}
  .js .reveal-stagger.in > *:nth-child(5){transition-delay:.36s}
  .js .reveal-stagger.in > *:nth-child(6){transition-delay:.44s}

  /* ---- hero load-in ---- */
  .js .hero h1,.js .hero .lede,.js .hero .hero-cta-row,.js .hero .hero-cover,.js .hero .two-ways,.js .hero .badge-row{opacity:0; animation:heroIn .8s cubic-bezier(.2,.7,.2,1) forwards;}
  .js .hero h1{animation-delay:.05s}
  .js .hero .lede{animation-delay:.15s}
  .js .hero .hero-cta-row{animation-delay:.25s}
  .js .hero .hero-cover{animation-delay:.33s}
  .js .hero .two-ways{animation-delay:.40s}
  .js .hero .badge-row{animation-delay:.48s}
  .js .hero .img-ph{opacity:0; animation:heroIn .9s cubic-bezier(.2,.7,.2,1) .28s forwards;}
  @keyframes heroIn{from{opacity:0; transform:translateY(18px)} to{opacity:1; transform:none}}

  /* respect reduced motion: show everything, kill decorative motion */
  @media (prefers-reduced-motion: reduce){
    .js .reveal,.js .reveal-stagger > *,.js .hero h1,.js .hero .lede,.js .hero .hero-cta-row,.js .hero .hero-cover,.js .hero .two-ways,.js .hero .badge-row,.js .hero .img-ph{opacity:1 !important; transform:none !important; animation:none !important;}
    .hero-orb,.float-call::after{animation:none !important;}
    .hero-orb{opacity:.32;}
  }

  /* former inline styles */
  .careers-title{margin-top:12px; font-size:clamp(24px,3vw,32px);}
  .careers-text{color:#5B6774; margin-top:14px; font-size:15.5px;}
  .careers-grid .role-list{margin-top:26px;}
  .eyebrow-light{color:#84BCDA;}

  /* ============ RESPONSIVE ============ */
  /* Large laptops / small desktops */
  @media (max-width:1100px){
    .hero-inner{gap:36px;}
    .solutions{gap:18px;}
    .why-grid{gap:18px;}
    nav.links{gap:20px;}
  }

  /* Tablets & mobile nav */
  @media (max-width:900px){
    .section{padding:64px 0;}
    .section.tight{padding:44px 0;}
    .section-head{margin-bottom:34px;}
    .hero{padding:44px 0 56px;}
    .hero-inner{grid-template-columns:1fr; gap:32px;}
    .hero .img-ph{order:-1; max-width:360px; margin:0 auto; aspect-ratio:4/3;}
    .hero p.lede{max-width:none;}
    .careers-grid{grid-template-columns:1fr; gap:32px;}
    .final-cta{padding:64px 0;}

    .nav-inner{padding:12px 20px; gap:12px; position:relative;}
    .nav-inner .cta-btn{margin-left:auto; padding:10px 18px;}
    .menu-toggle{display:block;}
    nav.links{display:none; position:absolute; top:100%; left:0; right:0; flex-direction:column; align-items:stretch; gap:0; background:#FEFDFB; border-bottom:1px solid rgba(40,62,93,0.12); box-shadow:0 18px 30px -18px rgba(40,62,93,0.3); padding:8px 20px 16px;}
    header.nav.open nav.links{display:flex;}
    nav.links a{padding:14px 4px; font-size:16px; border-bottom:1px solid rgba(40,62,93,0.08);}
    nav.links a:last-child{border-bottom:none;}
    nav.links a::after{display:none;}
    header.nav.open .menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg);}
    header.nav.open .menu-toggle span:nth-child(2){opacity:0;}
    header.nav.open .menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
    .menu-toggle span{transition:transform .25s ease, opacity .2s ease;}
  }

  /* Large phones / small tablets */
  @media (max-width:720px){
    body{font-size:16px;}
    .wrap{padding:0 20px;}
    .consent{padding:0 20px 22px;}
    .section{padding:36px 0;}
    .topbar{font-size:12.5px; padding:9px 14px; line-height:1.5;}
    .contrast-col{padding:26px 22px;}
    .call-strip{padding:20px; flex-direction:column; align-items:flex-start; margin-top:32px;}
    .call-strip .cta-btn{width:100%; justify-content:center;}
    .checklist{gap:18px;}
    .footer-bottom{flex-direction:column; align-items:flex-start;}
    .final-phone{font-size:26px;}
    .role{flex-wrap:wrap;}
  }

  /* Phones */
  @media (max-width:560px){
    .hero{padding:32px 0 44px;}
    .hero h1{margin:12px 0 16px;}
    .hero p.lede{font-size:16.5px; margin-bottom:24px;}
    .hero .img-ph{max-width:100%;}
    .phone-big{font-size:24px; flex-wrap:wrap;}
    .two-ways{flex-direction:column; align-items:flex-start; gap:12px;}
    .two-ways .cta-btn{width:100%; justify-content:center;}
    .badge-row{gap:12px 18px;}
    .who-card{padding:18px;}
    .section-head{margin-bottom:28px;}
    .final-cta-row{flex-direction:column; gap:18px;}
    .final-cta-row .cta-btn{width:100%; max-width:320px; justify-content:center;}
    .final-cta p{font-size:16px;}
    .agent-body, .sol-body, .story-body{padding-left:20px; padding-right:20px;}
    .float-call{right:14px; bottom:14px; padding:13px 18px; font-size:13.5px;}
    .brand img{height:28px;}
    .nav-inner .cta-btn{padding:9px 14px; font-size:13.5px;}
  }

  /* Very small phones */
  @media (max-width:380px){
    .wrap{padding:0 16px;}
    .nav-inner{padding:10px 16px;}
    .topbar{font-size:12px;}
    .phone-big{font-size:21px;}
    .final-phone{font-size:23px;}
    .contrast-col, .when-card, .edu-item, .step{padding-left:18px; padding-right:18px;}
    .checklist{padding:22px 18px;}
  }

  /* Short landscape phones: don't let the sticky header eat the screen */
  @media (max-height:480px) and (orientation:landscape){
    header.nav{position:static;}
    .float-call{padding:10px 16px;}
  }

  /* Touch devices: no sticky hover lift */
  @media (hover:none){
    .sol-card:hover,.who-card:hover,.when-card:hover,.story:hover,.step:hover,.contrast-col.good:hover,.final-phone:hover,.cta-btn:hover{transform:none;}
  }

  /* Print */
  @media print{
    .topbar,header.nav,.float-call,.hero-orb{display:none !important;}
    .section,.final-cta{padding:28px 0;}
  }

  /* ============ BLOG: home section, listing, details ============ */
  .section-head-row{display:flex; justify-content:space-between; align-items:flex-end; gap:20px 32px; flex-wrap:wrap; margin-bottom:44px;}
  .section-head-row .section-head{margin-bottom:0;}

  .blog-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
  .blog-grid.three{grid-template-columns:repeat(3,1fr);}
  .blog-card{display:flex; background:#fff; border:1px solid rgba(40,62,93,0.12); border-radius:18px; overflow:hidden; box-shadow:0 1px 2px rgba(40,62,93,0.05); transition:transform .38s cubic-bezier(.2,.7,.2,1), box-shadow .38s ease, border-color .38s ease;}
  .blog-card:hover{transform:translateY(-5px); box-shadow:0 22px 46px -20px rgba(40,62,93,0.30); border-color:rgba(219,153,90,0.55);}
  .blog-card[hidden]{display:none;}
  .blog-card-link{display:flex; flex-direction:column; width:100%; text-decoration:none; color:inherit;}
  .blog-card .img-ph{border-radius:0; aspect-ratio:16/10; border:none; border-bottom:1.5px dashed rgba(40,62,93,0.2); padding:14px;}
  .blog-body{display:flex; flex-direction:column; flex:1; padding:20px 22px 24px;}
  .blog-meta{display:flex; flex-wrap:wrap; align-items:center; gap:4px 12px; font-size:12.5px; color:#5B6774;}
  .blog-meta .tag{font-size:12px; letter-spacing:0.06em; text-transform:uppercase; color:#C7863F; font-weight:700;}
  .blog-card h3{font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif; font-weight:700; font-size:17px; line-height:1.35; margin:10px 0 8px; transition:color .2s ease;}
  .blog-card:hover h3{color:#C7863F;}
  .blog-card p{font-size:14px; color:#5B6774; margin:0 0 18px;}
  .read-more{margin-top:auto; font-size:14px; font-weight:700; color:#283E5D;}
  .blog-card:hover .read-more{color:#C7863F;}
  .blog-empty{text-align:center; color:#5B6774; padding:30px 0;}
  .blog-empty[hidden]{display:none;}
  .blog-table-wrapper table {
    width: 100%;
    border-collapse: collapse;
    
    color: #1a1a1a;
    background-color: #ffffff;
    border: 1px solid #d9dce1;
  }

  .blog-table-wrapper thead {
    background-color: #e9eef2;
  }

  .blog-table-wrapper th {
    font-weight: 700;
    color: #111827;
    text-align: left;
    padding: 12px 16px;
    border: 1px solid #d9dce1;
    vertical-align: middle;
  }

  .blog-table-wrapper td {
    padding: 14px 16px;
    border: 1px solid #d9dce1;
    vertical-align: top;
  }



  /* page hero (listing + article) */
  .page-hero{background:#FBF7F1; border-bottom:1px solid rgba(40,62,93,0.12); padding:52px 0 48px;}
  .page-hero h1{font-size:clamp(30px,4.2vw,46px); line-height:1.15; letter-spacing:-0.01em; margin:14px 0 16px; max-width:820px;}
  .page-lede{font-size:17.5px; color:#5B6774; max-width:680px; margin:0;}
  .page-actions{margin-top:28px;}
  .crumbs{display:flex; flex-wrap:wrap; align-items:center; gap:8px; font-size:13.5px; color:#5B6774; margin-bottom:22px;}
  .crumbs a{text-decoration:none;}
  .crumbs a:hover{color:#283E5D; text-decoration:underline;}
  .crumb-current{color:#283E5D; font-weight:600;}
  nav.links a[aria-current="page"]{color:#283E5D; font-weight:600;}
  nav.links a[aria-current="page"]::after{width:100%;}

  /* filter chips */
  .filter-bar{display:flex; flex-wrap:wrap; gap:10px; margin-bottom:32px;}
  .chip{font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif; font-size:14px; font-weight:600; color:#283E5D; background:#fff; border:1.5px solid rgba(40,62,93,0.2); border-radius:100px; padding:9px 18px; cursor:pointer; transition:background .2s ease, color .2s ease, border-color .2s ease;}
  .chip:hover{border-color:#283E5D;}
  .chip[aria-pressed="true"]{background:#283E5D; border-color:#283E5D; color:#fff;}

  /* article */
  .article-hero .blog-meta{margin-bottom:4px;}
  .byline{display:flex; align-items:center; gap:12px; margin-top:26px;}
  .byline-dot{width:42px; height:42px; border-radius:50%; background:#283E5D; color:#fff; font-family:'Fraunces', Georgia, serif; font-weight:600; font-size:18px; display:flex; align-items:center; justify-content:center; flex:0 0 auto;}
  .byline strong{display:block; font-size:14.5px; color:#283E5D; line-height:1.3;}
  .byline small{display:block; font-size:12.5px; color:#5B6774;}
  .article-cover{max-width:960px; margin:0 auto 44px;}
  .article-cover .img-ph{aspect-ratio:16/8; border-radius:18px;}
  .article-body{max-width:720px; margin:0 auto;}
  .article-body p{font-size:17px; line-height:1.8; margin:0 0 20px;}
  .article-body h2{font-size:clamp(22px,2.6vw,28px); line-height:1.25; margin:40px 0 14px;}
  .article-list{list-style:none; padding:0; margin:0 0 24px; display:flex; flex-direction:column; gap:10px;}
  .article-list li{position:relative; padding-left:28px; font-size:16.5px; line-height:1.65;}
  .article-list li:before{content:""; position:absolute; left:3px; top:9px; width:8px; height:8px; border-radius:50%; background:#57A773;}
  .pull{margin:32px 0; padding:6px 0 6px 22px; border-left:3px solid #DB995A; font-family:'Fraunces', Georgia, serif; font-size:clamp(19px,2.4vw,24px); line-height:1.4; color:#283E5D;}
  .article-note{font-size:13px !important; font-style:italic; color:#5B6774; border-top:1px solid rgba(40,62,93,0.12); padding-top:18px; margin-top:36px !important;}
  .article-body ~ .call-strip{max-width:720px; margin:44px auto 0;}
  .article-loading{color:#5B6774; margin:0;}

  /* blog responsive */
  @media (max-width:1100px){
    .blog-grid{grid-template-columns:repeat(2,1fr);}
    .blog-grid.three{grid-template-columns:repeat(2,1fr);}
  }
  @media (max-width:900px){
    .page-hero{padding:40px 0 36px;}
    .section-head-row{margin-bottom:34px;}
  }
  @media (max-width:720px){
    .article-body p{font-size:16.5px;}
    .article-cover{margin-bottom:32px;}
    .article-cover .img-ph{aspect-ratio:16/10;}
    .article-body ~ .call-strip{margin-top:32px;}
    .page-lede{font-size:16.5px;}
  }
  @media (max-width:600px){
    .blog-grid, .blog-grid.three{grid-template-columns:1fr;}
    .section-head-row .cta-btn{width:100%; justify-content:center;}
    .filter-bar{gap:8px;}
    .chip{padding:8px 15px; font-size:13.5px;}
  }
  @media (hover:none){
    .blog-card:hover{transform:none;}
  }

  /* consistent card meta: category on one line, date below */
  .blog-card .blog-meta{flex-direction:column; align-items:flex-start; gap:3px;}

    /* ============ BLOG LISTING: load-on-scroll + end message ============ */
  .blog-status{margin:26px 0 0; text-align:center; font-size:13.5px; color:#5B6774;}
  .blog-status:empty{display:none;}
  .blog-more{display:flex; flex-direction:column; align-items:center; gap:16px; margin-top:12px;}
  .blog-loader{display:flex; align-items:center; gap:12px; padding:14px 0; font-size:14px; font-weight:500; color:#5B6774;}
  .blog-loader[hidden]{display:none;}
  .blog-spinner{width:22px; height:22px; border:2.5px solid rgba(40,62,93,0.16); border-top-color:#DB995A; border-radius:50%; animation:blogSpin .8s linear infinite;}
  @keyframes blogSpin{to{transform:rotate(360deg);}}
  .blog-sentinel{width:100%; height:1px;}
  .blog-sentinel[hidden]{display:none;}
  .blog-load-btn[hidden]{display:none;}
 
  .blog-end{display:flex; flex-direction:column; align-items:center; text-align:center; gap:8px; max-width:460px; margin:30px auto 0; padding:36px 20px 6px; border-top:1px solid rgba(40,62,93,0.12);}
  .blog-end[hidden]{display:none;}
  .blog-end-icon{display:flex; align-items:center; justify-content:center; width:52px; height:52px; border-radius:50%; background:rgba(87,167,115,0.14); border:1px solid rgba(87,167,115,0.4); margin-bottom:6px;}
  .blog-end h3{font-family:'Fraunces', Georgia, serif; font-size:22px; line-height:1.25; color:#283E5D; margin:0;}
  .blog-end p{font-size:15px; color:#5B6774; margin:0 0 12px;}
 
  .blog-card.is-entering{animation:blogCardIn .55s cubic-bezier(.2,.7,.2,1) both;}
  .blog-card.is-entering:nth-child(3n+2){animation-delay:.07s;}
  .blog-card.is-entering:nth-child(3n+3){animation-delay:.14s;}
  @keyframes blogCardIn{from{opacity:0; transform:translateY(18px);} to{opacity:1; transform:none;}}
 
  @media (max-width:600px){
    .blog-end{padding-top:30px;}
    .blog-end .cta-btn{width:100%; max-width:260px; justify-content:center;}
  }
  @media (prefers-reduced-motion:reduce){
    .blog-card.is-entering{animation:none;}
    .blog-spinner{animation-duration:1.8s;}
  }

/* Contact us section */
/* =====================================================================
   CONTACT SECTION  (#blue-row)  — Thrive Health Benefits
   Append to style.css. Static values only, no CSS variables.
   Scoped to #blue-row so it never touches the rest of the site.
   Works with or without Bootstrap on the page.
   ===================================================================== */

/* ---------- Section shell ---------- */
#contact-us{
  position:relative;
  overflow:hidden;
  width:100%;
  padding:0;
  color:#fff;
  background:
    radial-gradient(circle at 10% 6%, rgba(132,188,218,0.20), transparent 38%),
    radial-gradient(circle at 92% 94%, rgba(219,153,90,0.18), transparent 40%),
    linear-gradient(180deg, #1B2C44 0%, #22364F 100%);
}
#contact-us *, #contact-us *::before, #contact-us *::after{box-sizing:border-box;}

/* ---------- Heading + quote button ---------- */
#contact-us #fifth{
  position:relative;
  z-index:1;
  max-width:1200px;
  margin:0 auto;
  padding:84px 28px 56px !important;
  text-align:center;
}
#contact-us #fifth > br{display:none;}
#contact-us #fifth > h2{
  font-family:'Fraunces', Georgia, serif;
  font-weight:600;
  font-size:clamp(28px, 3.8vw, 44px);
  line-height:1.18;
  letter-spacing:-0.01em;
  color:#fff;
  max-width:780px;
  margin:0 auto;
}
#contact-us #fifth-a{margin-top:30px;}
#contact-us #fifth-a a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 34px;
  border-radius:100px;
  background:#DB995A;
  color:#1B2C44;
  font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  font-size:14px;
  font-weight:700;
  letter-spacing:0.08em;
  text-decoration:none;
  box-shadow:0 10px 24px -12px rgba(219,153,90,0.8);
  transition:background .2s ease, color .2s ease, transform .2s ease;
}
#contact-us #fifth-a a:hover{background:#C7863F; color:#fff; transform:translateY(-1px);}
#contact-us #fifth-a a:active{transform:translateY(0);}
#contact-us #fifth-a a:focus-visible{outline:3px solid #84BCDA; outline-offset:3px;}

/* ---------- Form card ---------- */
#contact-us #form-box{
  width:100%;
  max-width:640px;
  margin:36px auto 0;
  padding:36px;
  text-align:left;
  background:#fff;
  color:#1B2C44;
  border-radius:22px;
  box-shadow:0 30px 60px -28px rgba(0,0,0,0.55);
}

/* Form grid (replaces Bootstrap's .row / .g-3 / .col-*) */
#contact-us #myForm{
  display:grid;
  grid-template-columns:minmax(0, 1fr);
  gap:16px;
  margin:0;
}
#contact-us #myForm > *{
  width:100%;
  max-width:100%;
  min-width:0;
  margin:0;
  padding:0;
  flex:none;
}

/* Empty labels (placeholders do the work) */
#contact-us #myForm .form-label:empty{display:none;}
#contact-us #myForm .form-label{
  display:block;
  margin:0 0 6px;
  font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  font-size:13.5px;
  font-weight:600;
  color:#283E5D;
}

/* ---------- Inputs ---------- */
#contact-us .form-control{
  display:block;
  width:100%;
  height:52px;
  padding:0 16px;
  font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  font-size:15.5px;
  line-height:1.4;
  color:#1B2C44;
  background-color:#fff;
  border:1.5px solid rgba(40,62,93,0.22);
  border-radius:12px;
  box-shadow:none;
  outline:none;
  -webkit-appearance:none;
  appearance:none;
  transition:border-color .2s ease, box-shadow .2s ease;
}
#contact-us .form-control::placeholder{color:#8A95A3; opacity:1;}
#contact-us .form-control:hover{border-color:rgba(40,62,93,0.45);}
#contact-us .form-control:focus{
  border-color:#DB995A;
  box-shadow:0 0 0 4px rgba(219,153,90,0.25);
}
/* the textarea carries an inline white inset shadow, so the ring needs !important */
#contact-us textarea.form-control{
  height:auto;
  min-height:120px;
  padding:14px 16px;
  resize:vertical;
}
#contact-us textarea.form-control:focus{box-shadow:0 0 0 4px rgba(219,153,90,0.25) !important;}

/* hide number spinners on the phone field */
#contact-us input[type="number"]{-moz-appearance:textfield;}
#contact-us input[type="number"]::-webkit-outer-spin-button,
#contact-us input[type="number"]::-webkit-inner-spin-button{-webkit-appearance:none; margin:0;}

/* ---------- Validation ---------- */
#contact-us .invalid-feedback{
  display:none;
  margin-top:6px;
  font-size:13px;
  font-weight:500;
  color:#C0453A;
}
#contact-us .was-validated .form-control:invalid,
#contact-us .form-control.is-invalid{border-color:#C0453A;}
#contact-us .was-validated .form-control:invalid:focus,
#contact-us .form-control.is-invalid:focus{box-shadow:0 0 0 4px rgba(192,69,58,0.18);}
#contact-us .was-validated .form-control:invalid ~ .invalid-feedback,
#contact-us .form-control.is-invalid ~ .invalid-feedback{display:block;}
#contact-us .was-validated .form-control:valid{border-color:#57A773;}
#contact-us .was-validated .form-check-input:invalid ~ .form-check-label{color:#C0453A;}

/* phone verification message */
#contact-us #verificationResult{margin:8px 0 0; font-size:13px; line-height:1.5; color:#5B6774;}
#contact-us #verificationResult:empty{display:none;}

/* ---------- Consent checkboxes ---------- */
#contact-us .form-check{
  display:flex;
  align-items:flex-start;
  gap:12px;
  margin:0;
  padding:0;
}
#contact-us .form-check.mt-3{margin-top:4px;}
#contact-us .form-check.mt-2{margin-top:0;}
#contact-us .form-check-input{
  flex:0 0 auto;
  width:20px;
  height:20px;
  margin:2px 0 0;
  float:none;
  cursor:pointer;
  accent-color:#DB995A;
}
#contact-us .form-check-input:focus-visible{outline:3px solid #84BCDA; outline-offset:2px;}
#contact-us .form-check-label{
  flex:1;
  min-width:0;
  font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  font-size:12.5px !important;
  line-height:1.6;
  text-align:left !important;
  color:#5B6774;
  cursor:pointer;
}

/* ---------- Submit button ---------- */
#contact-us #myForm .btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:100%;
  margin-top:6px;
  border:none !important;
  border-radius:100px !important;
  /* !important so the button's old inline blue gradient / Poppins are overridden */
  background:#DB995A !important;
  color:#1B2C44 !important;
  font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size:15.5px;
  font-weight:700;
  letter-spacing:0.02em;
  padding:15px 22px !important;
  cursor:pointer;
  box-shadow:0 10px 22px -12px rgba(219,153,90,0.9);
  transition:background .2s ease, color .2s ease, transform .2s ease;
}
#contact-us #myForm .btn:hover{background:#C7863F !important; color:#fff !important; transform:translateY(-1px);}
#contact-us #myForm .btn:active{transform:translateY(0);}
#contact-us #myForm .btn:focus-visible{outline:3px solid #84BCDA; outline-offset:3px;}
#contact-us #myForm .btn:disabled{opacity:0.7; cursor:not-allowed; transform:none;}

/* loading spinner inside the button */
#contact-us .spinner-border{
  display:inline-block;
  width:16px;
  height:16px;
  margin-left:10px;
  vertical-align:-2px;
  border:2px solid currentColor;
  border-right-color:transparent;
  border-radius:50%;
  animation:blueRowSpin .7s linear infinite;
}
@keyframes blueRowSpin{to{transform:rotate(360deg);}}

/* ---------- Success popup ---------- */
#contact-us #popup{margin-top:20px; padding:0;}
#contact-us #popup p{
  margin:0;
  padding:18px 20px !important;
  font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  font-size:16px !important;
  font-weight:600;
  line-height:1.55;
  text-align:center;
  color:#283E5D !important;
  background:#EEF5F9 !important;
  border:1px solid rgba(87,167,115,0.55);
  border-left:4px solid #57A773;
  border-radius:14px !important;
}

/* ---------- How can we help ---------- */
#contact-us .section-hcwh{
  position:relative;
  z-index:1;
  max-width:1000px;
  margin:0 auto;
  padding:0 28px 88px;
  text-align:center;
}
#contact-us .section-hcwh > h2{
  font-family:'Fraunces', Georgia, serif;
  font-weight:600;
  font-size:clamp(26px, 3.2vw, 38px);
  line-height:1.2;
  letter-spacing:-0.01em;
  color:#fff;
  margin:0 0 40px;
  padding-top:56px;
}
#contact-us .section-hcwh > h2::before{
  content:"";
  display:block;
  width:56px;
  height:3px;
  margin:0 auto 24px;
  border-radius:3px;
  background:#DB995A;
}
#contact-us .hcwh-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:24px;
}
#contact-us .hcwh-item{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  padding:36px 28px 34px;
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.14);
  border-radius:20px;
  transition:transform .35s cubic-bezier(.2,.7,.2,1), background .35s ease, border-color .35s ease, box-shadow .35s ease;
}
#contact-us .hcwh-item:hover{
  transform:translateY(-5px);
  background:rgba(255,255,255,0.1);
  border-color:rgba(219,153,90,0.6);
  box-shadow:0 24px 44px -22px rgba(0,0,0,0.6);
}
/* markup order is title → icon → text → link; show icon first */
#contact-us .hcwh-icon{order:1;}
#contact-us .hcwh-item h4{order:2;}
#contact-us .hcwh-item p{order:3;}
#contact-us .hcwh-item a{order:4;}

#contact-us .hcwh-item h4{
  font-family:'Fraunces', Georgia, serif;
  font-weight:600;
  font-size:22px;
  line-height:1.25;
  color:#fff;
  margin:20px 0 6px;
}
#contact-us .hcwh-item p{
  margin:0 0 14px;
  font-size:15px;
  color:#C6D2E2;
}
#contact-us .hcwh-item a{
  font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  font-size:18px;
  font-weight:700;
  color:#DB995A;
  text-decoration:none;
  overflow-wrap:anywhere;
  border-bottom:1.5px solid transparent;
  transition:color .2s ease, border-color .2s ease;
}
#contact-us .hcwh-item a:hover{color:#fff; border-bottom-color:#DB995A;}
#contact-us .hcwh-item a:focus-visible{outline:3px solid #84BCDA; outline-offset:4px; border-radius:4px;}

/* Icon badge. The missing PNGs are replaced by built-in line icons
   (mail = first card, phone = second card). Remove the two
   "display:none" / "::before" rules if you later supply real images. */
#contact-us .hcwh-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:72px;
  height:72px;
  border-radius:50%;
  background:rgba(219,153,90,0.14);
  border:1px solid rgba(219,153,90,0.45);
}
#contact-us .hcwh-icon img{display:none;}
#contact-us .hcwh-icon::before{
  content:"";
  display:block;
  width:32px;
  height:32px;
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
}
#contact-us .hcwh-item:first-child .hcwh-icon::before{
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23DB995A' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='5' width='18' height='14' rx='2.5'/><path d='M3.5 7.5l8.5 6 8.5-6'/></svg>");
}
#contact-us .hcwh-item:last-child .hcwh-icon::before{
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23DB995A' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.13.96.36 1.9.7 2.81a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.91.34 1.85.57 2.81.7A2 2 0 0 1 22 16.92z'/></svg>");
}

/* =====================================================================
   RESPONSIVE
   ===================================================================== */
@media (max-width:900px){
  #contact-us #fifth{padding:64px 24px 44px !important;}
  #contact-us #fifth-a{margin-top:26px;}
  #contact-us #form-box{margin-top:30px; padding:30px;}
  #contact-us .section-hcwh{padding:0 24px 72px;}
  #contact-us .section-hcwh > h2{padding-top:44px; margin-bottom:32px;}
}

@media (max-width:720px){
  #contact-us #fifth{padding:52px 20px 36px !important;}
  #contact-us #form-box{padding:26px 22px; border-radius:18px;}
  /* 16px stops iOS Safari zooming in on focus */
  #contact-us .form-control{font-size:16px; height:50px;}
  #contact-us textarea.form-control{min-height:110px;}
  #contact-us .section-hcwh{padding:0 20px 60px;}
  #contact-us .hcwh-grid{gap:18px;}
  #contact-us .hcwh-item{padding:30px 22px 28px;}
}

@media (max-width:640px){
  #contact-us .hcwh-grid{grid-template-columns:minmax(0, 1fr);}
}

@media (max-width:560px){
  #contact-us #fifth-a{margin-top:22px;}
  #contact-us #fifth-a a{width:100%; max-width:320px;}
  #contact-us .hcwh-item a{font-size:17px;}
}

@media (max-width:380px){
  #contact-us #fifth{padding:44px 16px 30px !important;}
  #contact-us #form-box{padding:22px 16px; border-radius:16px;}
  #contact-us .form-check{gap:10px;}
  #contact-us .form-check-label{font-size:12px !important;}
  #contact-us .section-hcwh{padding:0 16px 52px;}
  #contact-us .hcwh-icon{width:64px; height:64px;}
}

@media (hover:none){
  #contact-us .hcwh-item:hover{transform:none;}
  #contact-us #fifth-a a:hover,
  #contact-us #myForm .btn:hover{transform:none;}
}

@media (prefers-reduced-motion:reduce){
  #contact-us .spinner-border{animation-duration:1.6s;}
  #contact-us .hcwh-item,
  #contact-us #fifth-a a,
  #contact-us #myForm .btn{transition:none;}
}
