/*
  Scoped to .content
  This stylesheet affects only elements inside the site's .content container.
*/


  .content{
    --red:#C8102E; --red-deep:#A00C23;
    --blush:#FBEFF1; --blush-soft:var(--background-color);
    --ink:#1C1A17; --body:#5A554E; --muted:#8C867C;
    --line:#EAE5DC; --line-soft:#F2EEE6;
    --white:#FFFFFF; --warm:var(--background-color); --cream:var(--background-color);
  }
  .content *{ box-sizing:border-box; margin:0; padding:0; }
  .content{ scroll-behavior:smooth; }
  .content{
    font-family:"Roboto","Helvetica Neue",Arial,sans-serif;
    color:var(--body); background:var(--background-color); line-height:1.6; font-size:16px;
    -webkit-font-smoothing:antialiased;
    -webkit-print-color-adjust:exact; print-color-adjust:exact;
  }
  .content .wrap{ max-width:1080px; margin:0 auto; padding:0 26px; }
  .content a{ color:inherit; text-decoration:none; }
  .content a:hover{ text-decoration:none;}
  .content .eyebrow{ font-size:11.5px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:var(--red); }
  .content h2.sec{ font-size:30px; font-weight:800; color:var(--ink); letter-spacing:-.015em; line-height:1.16; margin:10px 0 0; }
  .content section{ padding:78px 0; }
  .content p{ max-width:62ch; }

  .content .btn{ display:inline-block; background:var(--red); color:#fff; font-weight:700; font-size:16px;
        padding:8px 12px; border-radius:11px; text-align:center; cursor:pointer;
        transition: .15s ease, transform .08s ease; height:42px; }
  .content .btn:hover{ background:var(--red-deep); }
  .content .btn:active{ transform:translateY(1px); }
  .content .btn.ghost{ background:transparent; color:var(--red); border:1.5px solid var(--line); }
  .content .btn.ghost:hover{ background:var(--blush); border-color:var(--blush); }
  .content .arrowlink{ color:var(--red); font-weight:700; font-size:15px; display:inline-flex; align-items:center; gap:6px; }

  /* top bar */
  .content .topbar{ background:var(--white); border-bottom:1px solid var(--line); }
  .content .topbar .wrap{ display:flex; align-items:center; justify-content:space-between; height:62px; }
  .content .brand{ font-size:18px; font-weight:900; color:var(--ink); }
  .content .brand span{ color:var(--red); }
  .content .topbar a.back{ font-size:14px; font-weight:600; color:var(--muted); }

  /* hero */
  .content .hero{ background:var(--white); border-bottom:1px solid var(--line); padding:70px 0; }
  .content .hero .wrap{ display:grid; grid-template-columns:1.02fr .98fr; gap:56px; align-items:center; }
  .content .hero h1{ font-size:41px; font-weight:800; letter-spacing:-.02em; line-height:1.09; color:var(--ink); margin:14px 0 0; }
  .content .hero .htext p{ font-size:17px; color:var(--body); margin-top:18px; }
  .content .hero .cta-row{ margin-top:26px; }
  .content .hero .disc{ margin-top:15px; font-size:13.5px; color:var(--muted); }
  .content .hero .disc b{ color:var(--body); font-weight:600; }

  /* itinerary sample card */
  .content .itin-wrap{ position:relative; }
  .content .itin-wrap::before{ content:""; position:absolute; inset:24px -18px -18px 30px; background:var(--blush); border-radius:22px; z-index:0; }
  .content .itin{ position:relative; z-index:1; background:var(--white); border:1px solid var(--line);
         border-radius:18px; box-shadow:0 16px 44px rgba(28,26,23,.10); padding:26px 28px; }
  .content .itin .ilabel{ font-size:11px; letter-spacing:.16em; font-weight:700; color:var(--red); text-transform:uppercase; }
  .content .itin .irow{ display:flex; justify-content:space-between; gap:18px; padding:9px 0; border-top:1px solid var(--line-soft); font-size:14px; }
  .content .itin .irow:first-of-type{ margin-top:12px; }
  .content .itin .irow .k{ color:var(--muted); white-space:nowrap; }
  .content .itin .irow .v{ color:var(--ink); font-weight:500; text-align:right; }
  .content .itin .day{ margin-top:14px; padding-top:16px; border-top:1px solid var(--line-soft); }
  .content .itin .dhead{ font-size:12px; text-transform:uppercase; letter-spacing:.1em; color:var(--ink); font-weight:700; margin-bottom:12px; }
  .content .itin .slot{ display:flex; gap:12px; padding:6px 0; font-size:13.5px; color:var(--body); line-height:1.45; }
  .content .itin .slot .t{ flex:0 0 66px; color:var(--red); font-weight:700; }
  .content .itin .icap{ margin-top:16px; padding-top:14px; border-top:1px solid var(--line-soft); font-size:12px; color:var(--muted); font-style:italic; }

  /* trust strip */
  .content .trust{ background:var(--cream); border-bottom:1px solid var(--line); }
  .content .trust .wrap{ display:grid; grid-template-columns:repeat(4,1fr); gap:20px; padding:20px 26px; }
  .content .trust .t{ display:flex; align-items:center; gap:9px; font-size:14px; color:var(--body); }
  .content .trust .t svg{ width:17px; height:17px; color:var(--red); flex:0 0 auto; }

  /* useful when */
  .content .three{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-top:36px; }
  .content .sit{ border:1px solid var(--line); border-radius:16px; padding:26px 24px; background:var(--white); }
  .content .sit h3{ font-size:17px; font-weight:700; color:var(--ink); margin-bottom:9px; line-height:1.32; }
  .content .sit p{ font-size:14.5px; color:var(--body); }

  /* what you receive */
  .content .receive{ background:var(--white); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
  .content .dlist{ list-style:none; display:grid; grid-template-columns:1fr 1fr; gap:26px 48px; margin-top:30px; }
  .content .dlist li{ display:flex; gap:14px; align-items:flex-start; }
  .content .dchk{ width:23px; height:23px; border-radius:50%; background:var(--blush); color:var(--red); display:flex; align-items:center; justify-content:center; flex:0 0 auto; margin-top:1px; }
  .content .dchk svg{ width:12px; height:12px; }
  .content .dlist h4{ font-size:15.5px; font-weight:700; color:var(--ink); margin-bottom:3px; }
  .content .dlist p{ font-size:14.5px; color:var(--body); }
  .content .buy-row{ margin-top:34px; }
  .content .offer-fine{ font-size:13px; color:var(--muted); margin-top:22px; font-style:italic; max-width:74ch; }

  /* how it works */
  .content .how{ background:var(--warm); }
  .content .stepsrow{ position:relative; display:grid; grid-template-columns:repeat(3,1fr); gap:30px; margin-top:42px; }
  .content .stepsrow::before{ content:""; position:absolute; top:20px; left:17%; right:17%; height:2px; background:var(--line); z-index:0; }
  .content .stepx{ position:relative; z-index:1; text-align:center; }
  .content .stepx .num{ width:42px; height:42px; border-radius:50%; background:var(--red); color:#fff; font-weight:700; font-size:17px; display:flex; align-items:center; justify-content:center; margin:0 auto 16px; }
  .content .stepx h3{ font-size:16.5px; font-weight:700; color:var(--ink); margin-bottom:6px; }
  .content .stepx p{ font-size:14px; color:var(--body); max-width:30ch; margin:0 auto; }

  /* pricing */
  .content .pricing{ background:var(--white); border-top:1px solid var(--line); }
  .content .pricing .head{ text-align:center; }
  .content .tiers{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-top:40px; align-items:stretch; }
  .content .tier{ display:flex; flex-direction:column; background:var(--warm); border:1px solid var(--line); border-radius:18px; padding:28px 26px; }
  .content .tier.featured{ background:var(--white); border:2px solid var(--red); box-shadow:0 18px 44px rgba(200,16,46,.10); }
  .content .tier .tname{ font-size:17px; font-weight:800; color:var(--ink); }
  .content .tier .meta{ margin-top:8px; font-size:14px; color:var(--body); }
  .content .tier .meta b{ color:var(--ink); font-weight:700; }
  .content .tier .price{ font-size:38px; font-weight:900; color:var(--ink); letter-spacing:-.02em; margin:16px 0 4px; }
  .content .tier .desc{ font-size:14px; color:var(--body); margin-bottom:22px; }
  .content .tier .btn{ margin-top:auto; }
  .content .tiernote{ text-align:center; margin-top:26px; font-size:14px; color:var(--muted); }

  /* business band */
  .content .biz{ background:var(--cream); }
  .content .biz .wrap{ display:grid; grid-template-columns:1.4fr 1fr; gap:40px; align-items:center; }
  .content .biz h3{ font-size:24px; font-weight:800; color:var(--ink); letter-spacing:-.01em; line-height:1.2; }
  .content .biz p{ font-size:15.5px; color:var(--body); margin-top:14px; }
  .content .biz .cta-side{ text-align:right; }
  .content .biz .cta-side .small{ display:block; font-size:13px; color:var(--muted); margin-top:12px; }

  /* why */
  .content .why{ background:var(--white); border-top:1px solid var(--line); }
  .content .proof{ display:grid; grid-template-columns:repeat(3,1fr); gap:40px; margin-top:34px; }
  .content .proof .p .bar{ width:34px; height:3px; background:var(--red); border-radius:2px; margin-bottom:15px; }
  .content .proof .p h3{ font-size:16.5px; font-weight:700; color:var(--ink); margin-bottom:8px; }
  .content .proof .p p{ font-size:14.5px; color:var(--body); }

  /* faq */
  .content .faq .qa{ max-width:800px; margin:28px auto 0; border-top:1px solid var(--line); }
  .content .faq details{ border-bottom:1px solid var(--line); }
  .content .faq summary{ list-style:none; cursor:pointer; font-size:16.5px; font-weight:700; color:var(--ink); padding:20px 0; display:flex; justify-content:space-between; align-items:center; gap:16px; }
  .content .faq summary::-webkit-details-marker{ display:none; }
  .content .faq summary::after{ content:"+"; color:var(--red); font-size:22px; font-weight:400; line-height:1; }
  .content .faq details[open] summary::after{ content:"–"; }
  .content .faq details .a{ padding:0 0 22px; }
  .content .faq details p{ font-size:15px; color:var(--body); }
  .content .faq details p + p{ margin-top:12px; }
  .content .faq details ul{ margin:8px 0 0; padding-left:20px; }
  .content .faq details li{ font-size:15px; color:var(--body); margin:5px 0; }

  /* final cta */
  .content .final{ background:var(--blush-soft); border-top:1px solid var(--line); text-align:center; }
  .content .final h2{ font-size:31px; font-weight:800; color:var(--ink); letter-spacing:-.015em; }
  .content .final p{ font-size:16.5px; color:var(--body); margin:13px auto 26px; }
  .content .final .lp{ margin-top:16px; font-size:13.5px; color:var(--muted); }

  /* other ways */
  .content .cross{ background:var(--white); border-top:1px solid var(--line); }
  .content .cross .grid{ display:grid; grid-template-columns:1fr 1fr; gap:22px; }
  .content .cross .box{ border:1px solid var(--line); border-radius:16px; padding:26px 28px; background:var(--warm); }
  .content .cross h3{ font-size:16.5px; font-weight:700; color:var(--ink); margin-bottom:8px; }
  .content .cross p{ font-size:14.5px; color:var(--body); margin-bottom:12px; }

  /* footer */
  .content footer.ft{ background:var(--warm); border-top:1px solid var(--line); padding:42px 0; }
  .content footer.ft .brand{ margin-bottom:14px; }
  .content footer.ft .disc{ font-size:12.5px; line-height:1.65; color:var(--muted); max-width:920px; margin-bottom:9px; }

  @media (max-width:860px){
    .content .hero .wrap, .content .biz .wrap{ grid-template-columns:1fr; gap:36px; }
    .content .trust .wrap{ grid-template-columns:1fr 1fr; gap:16px; }
    .content .three, .content .dlist, .content .stepsrow, .content .tiers, .content .proof, .content .cross .grid{ grid-template-columns:1fr; }
    .content .stepsrow::before{ display:none; }
    .content .hero h1{ font-size:33px; } .content h2.sec{ font-size:25px; }
    .content .biz .cta-side{ text-align:left; }
    .content .itin-wrap::before{ inset:14px -8px -10px 16px; }
  }
  @media print{
    .content .btn{ box-shadow:none !important; }
    .content .sit, .content .stepx, .content .proof .p, .content .itin, .content .tier, .content .faq details, .content .cross .box, .content .hero, .content .receive, .content .biz{ break-inside:avoid; }
    .content section{ padding:48px 0; }
    .content .faq details .a{ display:block !important; }
    .content .faq summary::after{ content:"" !important; }
  }