:root{
    --paper:#FDFCF9;
    --paper-deep:#F4F1EA;
    --ink:#1A1815;
    --muted:#716A5C;
    --rule:#E7E1D3;
    --wine:#5C1A24;
    --wine-deep:#40121A;
    --brass:#A9761E;
    --brass-soft:#F1E4C4;
    --navy:#233454;
    --navy-soft:#E6E9F0;
    --forest:#395233;
    --forest-soft:#E9EEE3;
    --max:1120px;
  }

  *{ box-sizing:border-box; }
  html{ scroll-behavior:smooth; }
  body{
    margin:0; background:var(--paper); color:var(--ink);
    font-family:'Bitstream Charter','Iowan Old Style', Georgia, 'Liberation Serif', serif;
    font-size:17px; line-height:1.6;
    -webkit-font-smoothing:antialiased;
  }
  .sans{ font-family:'Liberation Sans','Helvetica Neue',Arial,sans-serif; }
  img{ max-width:100%; height:auto; display:block; }
  a{ color:inherit; }
  .wrap{ max-width:var(--max); margin:0 auto; padding:0 28px; }

  /* ============ NAV ============ */
  nav{
    position:sticky; top:0; z-index:40;
    background:rgba(246,242,232,0.92); backdrop-filter:blur(6px);
    border-bottom:1px solid var(--rule);
  }
  nav .wrap{ display:flex; align-items:center; justify-content:space-between; padding-top:16px; padding-bottom:16px; }
  .wordmark{ font-family:'Liberation Sans',Arial,sans-serif; font-weight:700; font-size:14px; letter-spacing:0.02em; }
  a.wordmark{ color:inherit; text-decoration:none; }
  .wordmark .dot{ color:var(--brass); }
  .nav-right{ display:flex; align-items:center; gap:18px; font-family:'Liberation Sans',Arial,sans-serif; font-size:13.5px; }
  .nav-price{ color:var(--muted); }
  .btn{
    display:inline-block; font-family:'Liberation Sans',Arial,sans-serif; font-weight:700; font-size:14px;
    letter-spacing:0.01em; text-decoration:none; padding:11px 22px; border-radius:3px;
    transition:transform .15s ease, box-shadow .15s ease;
  }
  .btn-primary{ background:var(--brass); color:#fbf9f4; }
  .btn-primary:hover{ background:var(--wine); }
  .btn-small{ padding:8px 16px; font-size:12.5px; }

  /* ============ HERO ============ */
  header.hero{ padding:64px 0 0 0; position:relative; overflow:hidden; }
  .hero-top{ max-width:900px; }
  .kicker{
    font-family:'Liberation Sans',Arial,sans-serif; text-transform:uppercase; letter-spacing:0.2em;
    font-size:12px; color:var(--brass); font-weight:700; margin-bottom:22px;
  }
  h1.headline{
    font-size:68px; line-height:1.03; font-weight:700; letter-spacing:-0.02em; margin:0 0 28px 0;
  }
  .hero-promise{ font-size:26px; font-style:italic; color:var(--wine); max-width:640px; margin:-8px 0 18px 0; line-height:1.35; }
  .hero-sub{ font-size:20px; color:#3d382e; max-width:560px; margin:0 0 34px 0; line-height:1.55; }
  .hero-sub strong{ color:var(--ink); }
  .hero-cta-row{ display:flex; align-items:center; gap:18px; flex-wrap:wrap; }
  .trust-line{
    font-family:'Liberation Sans',Arial,sans-serif; font-size:12.5px; color:var(--muted);
    margin-top:20px; letter-spacing:0.01em;
  }
  .trust-line .sep{ margin:0 8px; opacity:.5; }

  .pay-methods{ display:flex; align-items:center; gap:14px; margin-top:16px; flex-wrap:wrap; }
  .pay-methods img{ height:22px; width:auto; display:block; }

  .hero-art{ position:relative; margin-top:52px; padding-bottom:0; }
  .hero-art .frame{
    position:relative; margin:0 auto; width:340px; z-index:1;
    box-shadow:0 20px 40px -20px rgba(20,15,10,0.18);
    transform:rotate(1.6deg);
    border:1px solid rgba(0,0,0,0.06);
  }
  .hero-art .frame img{ width:100%; display:block; }
  .hero-art .tag-float{
    position:absolute; left:calc(50% - 400px); bottom:180px; z-index:2;
    background:#fff; border:1px solid var(--rule); border-radius:3px;
    padding:11px 15px; box-shadow:0 6px 16px -8px rgba(20,15,10,0.16);
    transform:rotate(-2deg); font-family:'Liberation Sans',Arial,sans-serif; font-size:12.5px;
    max-width:190px;
  }
  .hero-art .tag-float .tg{ font-weight:700; font-size:9px; letter-spacing:0.05em; text-transform:uppercase; color:var(--brass); display:block; margin-bottom:3px; }
  .hero-art .tag-float2{
    position:absolute; right:calc(50% - 420px); top:100px; z-index:2;
    background:#fff; border:1px solid var(--rule); border-radius:3px;
    padding:11px 15px; box-shadow:0 6px 16px -8px rgba(20,15,10,0.16);
    transform:rotate(1.5deg); font-family:'Liberation Sans',Arial,sans-serif; font-size:12.5px;
    max-width:200px;
  }
  .hero-art .tag-float2 .tg{ font-weight:700; font-size:9px; letter-spacing:0.05em; text-transform:uppercase; color:var(--forest); display:block; margin-bottom:3px; }
  .hero-fade{
    position:absolute; left:0; right:0; bottom:0; height:120px; z-index:3;
    background:linear-gradient(to bottom, rgba(246,239,223,0), var(--paper));
  }

  /* ============ STRIP ============ */
  .strip{ border-top:1px solid var(--rule); border-bottom:1px solid var(--rule); background:var(--paper); }
  .strip .wrap{ display:grid; grid-template-columns:repeat(3,1fr); gap:0; }
  .strip .item{ padding:26px 20px; text-align:center; border-left:1px solid var(--rule); }
  .strip .item:first-child{ border-left:none; }
  .strip .item .n{ font-size:13.5px; font-weight:700; }
  .strip .item .d{ font-family:'Liberation Sans',Arial,sans-serif; font-size:12px; color:var(--muted); margin-top:4px; }

  /* ============ SECTION SHARED ============ */
  section{ padding:96px 0; }
  .sec-kicker{
    font-family:'Liberation Sans',Arial,sans-serif; text-transform:uppercase; letter-spacing:0.14em;
    font-size:11px; color:var(--brass); font-weight:700; margin-bottom:14px; text-align:center;
  }
  h2.sec-title{ font-size:32px; text-align:center; max-width:640px; margin:0 auto 16px auto; line-height:1.25; }
  p.sec-sub{ text-align:center; max-width:560px; margin:0 auto; color:var(--muted); font-size:16.5px; }

  /* ============ COMPARISON ============ */
  .compare{ display:grid; grid-template-columns:1fr 1fr; gap:32px; margin-top:56px; }
  .compare .card{ border-radius:5px; padding:26px 26px 30px 26px; }
  .compare .card.bad{ background:var(--paper-deep); border:1px dashed #D6CEBB; }
  .compare .card.good{ background:#fff; border:1px solid var(--rule); }
  .compare .card h3{
    font-family:'Liberation Sans',Arial,sans-serif; font-size:12px; text-transform:uppercase; letter-spacing:0.06em;
    margin:0 0 18px 0; font-weight:700;
  }
  .compare .card.bad h3{ color:#8a7f61; }
  .compare .card.good h3{ color:var(--brass); }
  .mock-line{ display:flex; align-items:baseline; gap:8px; padding:9px 0; border-bottom:1px solid #E2DAC6; font-size:14.5px; }
  .mock-line .lbl{ color:#8a7f61; min-width:112px; }
  .mock-line .fill{ flex:1; border-bottom:1px solid #b8ac8c; height:1px; margin-top:9px; }
  .good-line{ padding:10px 0; border-bottom:1px solid var(--rule); font-size:14.5px; }
  .good-line:last-child{ border-bottom:none; }
  .good-line .tg{ font-family:'Liberation Sans',Arial,sans-serif; font-size:9px; font-weight:700; letter-spacing:0.05em; text-transform:uppercase; margin-right:8px; }
  .good-line .tg.find{ color:var(--navy); }
  .good-line .tg.contact{ color:var(--forest); }
  .good-line .tg.do{ color:var(--brass); }
  .good-line .k{ font-weight:700; }

  /* ============ TAG SYSTEM (signature) ============ */
  .tagsystem{ background:var(--wine-deep); color:#F3EFE3; }
  .tagsystem .sec-kicker{ color:#D9B96C; }
  .tagsystem h2.sec-title{ color:#fff; }
  .tagsystem p.sec-sub{ color:#DDD0B4; }
  .tag-cards{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-top:60px; }
  .tag-card{
    background:rgba(255,255,255,0.05); border:1px solid rgba(255,255,255,0.14);
    border-radius:6px; padding:34px 28px; transition:transform .18s ease, background .18s ease;
  }
  .tag-card:hover{ transform:translateY(-4px); background:rgba(255,255,255,0.09); }
  .tag-card .badge{
    display:inline-block; font-family:'Liberation Sans',Arial,sans-serif; font-weight:700; font-size:12px;
    letter-spacing:0.06em; text-transform:uppercase; padding:5px 12px; border-radius:20px; margin-bottom:20px;
  }
  .tag-card.find .badge{ background:#AEBBD6; color:#1B2740; }
  .tag-card.contact .badge{ background:#B7CBAE; color:#243A1F; }
  .tag-card.do .badge{ background:#E4C077; color:#4A3308; }
  .tag-card h3{ font-size:19px; margin:0 0 10px 0; font-weight:700; }
  .tag-card p{ font-size:14.5px; color:#E4DAC2; margin:0; line-height:1.6; }
  .tag-card .example{
    margin-top:18px; font-family:'Liberation Sans',Arial,sans-serif; font-size:12.5px;
    color:#C9BB98; border-top:1px solid rgba(255,255,255,0.14); padding-top:14px;
  }

  /* ============ SAMPLE GALLERY ============ */
  .collage{ display:grid; grid-template-columns:1.15fr 1fr; gap:16px; margin-top:56px; }
  .collage-left img{
    width:100%; display:block; border:1px solid var(--rule); border-radius:2px;
    }
  .collage-right{ display:flex; flex-direction:column; gap:16px; }
  .collage-quote{
    background:var(--wine); color:#F3EADA; border-radius:4px; padding:32px 28px; flex:none;
  }
  .collage-quote .q{ font-size:23px; line-height:1.3; font-weight:700; margin:0; }
  .collage-quote .a{
    font-family:'Liberation Sans',Arial,sans-serif; font-size:11px; color:#D9C9A8;
    margin-top:16px; text-transform:uppercase; letter-spacing:0.06em;
  }
  .collage-shot{
    flex:1; overflow:hidden; border:1px solid var(--rule); border-radius:2px; position:relative;
    min-height:220px;
  }
  .collage-shot img{ width:100%; display:block; object-fit:cover; object-position:top; }
  .sample-note{
    font-family:'Liberation Sans',Arial,sans-serif; font-size:12.5px; color:var(--muted);
    text-align:center; margin-top:28px; max-width:520px; margin-left:auto; margin-right:auto;
  }

  /* ============ PRICING ============ */
  .pricing-card{
    max-width:480px; margin:56px auto 0 auto; background:#fff; border:1px solid var(--rule);
    border-radius:8px; padding:44px 40px; text-align:center; box-shadow:0 8px 24px -16px rgba(20,15,10,0.14);
  }
  .pricing-card .price{ font-size:52px; font-weight:700; margin:6px 0 4px 0; }
  .pricing-card .price small{ font-size:16px; font-weight:400; color:var(--muted); }
  .pricing-card .pricing-nudge{ font-style:italic; font-size:17px; color:var(--wine); margin:-10px 0 22px 0; line-height:1.4; }
  .pricing-card .price-note{ font-family:'Liberation Sans',Arial,sans-serif; font-size:12.5px; color:var(--muted); margin-bottom:26px; }
  .pricing-card .btn-primary{ width:100%; padding:15px 0; font-size:15px; }
  .pricing-list{ list-style:none; padding:0; margin:28px 0 0 0; text-align:left; font-family:'Liberation Sans',Arial,sans-serif; font-size:13.5px; color:#3d382e; }
  .pricing-list li{ padding:7px 0 7px 22px; position:relative; }
  .privacy-block{
    max-width:640px; margin:44px auto 0 auto; padding:26px 30px; background:var(--paper-deep);
    border-radius:6px; border:1px solid var(--rule);
  }
  .privacy-block h3{
    font-family:'Liberation Sans',Arial,sans-serif; font-size:12px; text-transform:uppercase;
    letter-spacing:0.06em; color:var(--brass); margin:0 0 12px 0; font-weight:700;
  }
  .privacy-block ul{ list-style:none; padding:0; margin:0; }
  .privacy-block li{ font-size:14px; padding:6px 0 6px 22px; position:relative; color:#3d382e; }
  .privacy-block li::before{ content:"—"; position:absolute; left:0; color:var(--forest); }

  /* ============ FOOTER ============ */
  footer{ border-top:1px solid var(--rule); padding:40px 0; }
  footer .wrap{ display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px; }
  footer .foot-note{ font-family:'Liberation Sans',Arial,sans-serif; font-size:12px; color:var(--muted); max-width:520px; }

  /* ============ RESPONSIVE ============ */
  @media (max-width:860px){
    h1.headline{ font-size:32px; }
    .hero-promise{ font-size:20px; margin-top:-4px; }
    .hero-grid{ grid-template-columns:1fr; gap:44px; }
    .hero-art .frame{ width:88%; margin:0 auto; transform:rotate(1deg); }
    .hero-art .tag-float{ display:none; }
    .strip .wrap{ grid-template-columns:1fr; }
    .strip .item{ border-left:none; border-top:1px solid var(--rule); }
    .strip .item:first-child{ border-top:none; }
    .compare{ grid-template-columns:1fr; }
    .tag-cards{ grid-template-columns:1fr; }
    .collage{ grid-template-columns:1fr; }
    .collage-shot{ min-height:180px; }
    section{ padding:64px 0; }
    h2.sec-title{ font-size:26px; }
  }

  :focus-visible{ outline:2px solid var(--brass); outline-offset:2px; }
  @media (prefers-reduced-motion: reduce){
    *{ transition:none !important; scroll-behavior:auto !important; }
  }
  /* ============ HOW IT WORKS ============ */
  .steps{ margin-top:48px; border-top:1px solid var(--rule); }
  .step{
    display:flex; align-items:center; gap:24px; padding:30px 6px;
    border-bottom:1px solid var(--rule);
  }
  .step .num{
    width:42px; height:42px; border-radius:9px; background:var(--brass);
    display:flex; align-items:center; justify-content:center; flex:none;
    font-family:'Liberation Sans',Arial,sans-serif; font-weight:700; font-size:16px; color:#fff;
  }
  .step-body{ flex:1; }
  .step h3{ font-size:19px; margin:0 0 6px 0; }
  .step p{ font-size:14.5px; color:var(--muted); line-height:1.6; margin:0; max-width:600px; }
  .step-arrow{ flex:none; color:var(--brass); font-size:22px; font-family:'Liberation Sans',Arial,sans-serif; }

/* Extracted from former inline style attributes (kept !important to preserve exact precedence) */
.u1{justify-content:center !important}
.u2{margin-top:16px !important}
.u3{font-family:Arial,sans-serif !important;font-size:12px !important}
.u4{color:#7a7264 !important;margin-right:16px !important}
.u5{color:#7a7264 !important}

/* ============ FAQ ============ */
#faq .faq{ max-width:760px; margin:40px auto 0 auto; border-top:1px solid var(--rule); }
#faq details{ border-bottom:1px solid var(--rule); }
#faq summary{ list-style:none; cursor:pointer; padding:20px 36px 20px 0; position:relative; }
#faq summary::-webkit-details-marker{ display:none; }
#faq summary::after{ content:"+"; position:absolute; right:6px; top:50%; transform:translateY(-50%); font-family:'Liberation Sans',Arial,sans-serif; font-size:22px; color:var(--brass); }
#faq details[open] summary::after{ content:"\2212"; }
#faq summary h3{ display:inline; font-size:18px; font-weight:700; margin:0; }
#faq details p{ font-size:15px; color:#3d382e; line-height:1.65; margin:0 0 22px 0; max-width:680px; }
.foot-owner{ font-family:Arial,sans-serif; font-size:12px; color:#7a7264; margin-top:10px; width:100%; }
.foot-owner a{ color:#7a7264; }
