:root { --bg:#0B0B0D; --card:#16161A; --card2:#111114; --line:rgba(255,255,255,.08); --text:#F5F5F4; --muted:#A1A1AA; --soft:#C4C4CC; --red:#E11D2E; --red2:#F5283A; --gold:#FBBF24; --sq:https://book.squareup.com/appointments/23rw381kh3huie/location/LYPXV6Y7HGGZY/services/GDSOWBZOSTVG3TRPZVSMMTJD; }
  * { box-sizing:border-box; }
  html { scroll-behavior:smooth; }
  body { margin:0; background:var(--bg); color:var(--text); font-family:'Barlow','Segoe UI',Helvetica,Arial,sans-serif; -webkit-font-smoothing:antialiased; line-height:1.5; overflow-x:hidden; }
  a { color:var(--text); text-decoration:none; } a:hover { color:#fff; }
  h1,h2,h3 { font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif; margin:0; text-transform:uppercase; letter-spacing:.01em; line-height:.95; text-wrap:balance; }
  p { margin:0; text-wrap:pretty; }
  img { max-width:100%; display:block; }
  .wrap { width:min(1296px, 100% - 48px); margin-inline:auto; }
  .btn { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:54px; padding:0 28px; border-radius:6px; font-family:'Barlow Condensed',sans-serif; font-weight:700; font-size:18px; letter-spacing:.06em; text-transform:uppercase; cursor:pointer; border:0; transition:transform .25s ease, box-shadow .25s ease, background .2s ease; touch-action:manipulation; }
  .btn-red { background:var(--red); color:#fff; box-shadow:0 10px 30px rgba(225,29,46,.35); }
  .btn-red:hover { background:var(--red2); color:#fff; transform:translateY(-2px); box-shadow:0 16px 40px rgba(225,29,46,.45); }
  .btn-ghost { background:rgba(255,255,255,.04); color:var(--text); border:1px solid rgba(255,255,255,.18); backdrop-filter:blur(6px); }
  .btn-ghost:hover { border-color:rgba(255,255,255,.5); transform:translateY(-2px); }
  :focus-visible { outline:2px solid var(--red); outline-offset:3px; }
  .card { background:linear-gradient(180deg,#17171B 0%,#111114 100%); border:1px solid var(--line); border-radius:16px; transition:transform .25s ease, border-color .25s ease; }
  .card:hover { transform:translateY(-4px); border-color:rgba(255,255,255,.18); }
  .eyebrow { font-family:'Barlow Condensed',sans-serif; font-weight:700; font-size:14px; letter-spacing:.22em; text-transform:uppercase; color:var(--red); }
  .muted { color:var(--muted); }
  .h2 { font-size:clamp(40px, 5vw, 64px); font-weight:800; }
  .li { display:flex; gap:10px; } .li::before { content:"—"; color:var(--red); flex-shrink:0; }
  .list { display:flex; flex-direction:column; gap:11px; font-size:15px; color:#D4D4D8; }
  .grid-3 { display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:24px; }
  .pad { padding-bottom:112px; }
  section { scroll-margin-top:90px; }
  .reveal { opacity:0; transform:translateY(20px); transition:opacity .9s cubic-bezier(.2,.7,.2,1), transform .9s cubic-bezier(.2,.7,.2,1); }
  .reveal.in { opacity:1; transform:none; }
  .sheen { position:relative; overflow:hidden; }
  .sheen::after { content:""; position:absolute; inset:0; background:linear-gradient(115deg, transparent 40%, rgba(255,255,255,.10) 50%, transparent 60%); transform:translateX(-120%); transition:transform 1s ease; pointer-events:none; }
  .sheen:hover::after { transform:translateX(120%); }
  @media (prefers-reduced-motion: reduce) { .reveal { opacity:1; transform:none; transition:none; } .btn,.card,.sheen::after { transition:none; } html { scroll-behavior:auto; } }
  header { position:sticky; top:0; z-index:20; background:rgba(11,11,13,.85); backdrop-filter:blur(10px); border-bottom:1px solid var(--line); }
  .nav { display:flex; align-items:center; justify-content:space-between; min-height:84px; gap:20px; }
  .nav-links { display:flex; align-items:center; gap:26px; white-space:nowrap; font-family:'Barlow Condensed',sans-serif; font-weight:600; font-size:17px; letter-spacing:.08em; text-transform:uppercase; }
  .nav-links a { color:#D4D4D8; padding:12px 0; } .nav-links a:hover { color:#fff; }
  .nav-phone { font-family:'Barlow Condensed',sans-serif; font-weight:700; font-size:18px; letter-spacing:.04em; white-space:nowrap; padding:12px 0; }
  .hero { position:relative; overflow:hidden; display:grid; grid-template-columns:minmax(0,7fr) minmax(0,5fr); align-items:center; gap:40px; padding:80px 0 72px; }
  .hero-glow { position:absolute; inset:0; pointer-events:none; background:radial-gradient(ellipse 60% 70% at 78% 50%, rgba(225,29,46,.22) 0%, transparent 60%), radial-gradient(ellipse 50% 60% at 20% 80%, rgba(255,255,255,.04) 0%, transparent 60%); }
  .hero h1 { font-size:clamp(56px, 7.2vw, 104px); font-weight:800; color:#fff; }
  .hero-photo { position:relative; width:min(460px, 100%); aspect-ratio:460/600; border-radius:18px; overflow:hidden; box-shadow:0 50px 100px rgba(0,0,0,.6), 0 0 0 1px var(--line); transform:rotate(2deg); margin-left:auto; }
  .hero-photo img { width:100%; height:100%; object-fit:cover; object-position:60% center; }
  .hero-photo .fade { position:absolute; inset:auto 0 0 0; height:45%; background:linear-gradient(180deg, transparent, rgba(11,11,13,.85)); }
  .hero-photo .cap { position:absolute; left:24px; bottom:24px; }
  .check { display:flex; align-items:center; gap:8px; }
  .strip { display:flex; align-items:center; justify-content:center; gap:18px 28px; flex-wrap:wrap; padding:22px 16px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); font-family:'Barlow Condensed',sans-serif; font-weight:600; font-size:18px; letter-spacing:.06em; text-transform:uppercase; color:#D4D4D8; }
  .strip .sep { color:#3F3F46; }
  .pkg { padding:36px; display:flex; flex-direction:column; gap:22px; }
  .pkg .price { font-family:'Barlow Condensed',sans-serif; font-weight:800; font-size:56px; line-height:1; }
  .pkg .rule { height:1px; background:var(--line); }
  .pkg.featured { border-color:rgba(225,29,46,.6); box-shadow:0 30px 80px rgba(225,29,46,.18); position:relative; }
  .tag { position:absolute; top:-14px; left:36px; background:var(--red); color:#fff; font-family:'Barlow Condensed',sans-serif; font-weight:700; font-size:13px; letter-spacing:.18em; text-transform:uppercase; padding:6px 12px; border-radius:4px; }
  .sub { font-family:'Barlow Condensed',sans-serif; font-weight:700; letter-spacing:.1em; text-transform:uppercase; font-size:13px; color:var(--muted); }
  .monthly { position:relative; overflow:hidden; border-radius:24px; padding:64px 72px; background:linear-gradient(120deg,#1A0608 0%,#141417 45%,#141417 100%); border:1px solid rgba(225,29,46,.45); box-shadow:0 40px 100px rgba(225,29,46,.15); display:grid; grid-template-columns:minmax(0,7fr) minmax(0,5fr); gap:64px; align-items:center; }
  .monthly .orb { position:absolute; right:-80px; top:-80px; width:420px; height:420px; border-radius:999px; background:radial-gradient(circle, rgba(225,29,46,.35) 0%, transparent 65%); pointer-events:none; }
  .pill-red { display:inline-flex; align-items:center; gap:10px; background:var(--red); color:#fff; font-family:'Barlow Condensed',sans-serif; font-weight:700; font-size:14px; letter-spacing:.18em; text-transform:uppercase; padding:8px 14px; border-radius:4px; }
  .how { margin-top:10px; padding:16px 18px; border-left:2px solid var(--red); background:rgba(255,255,255,.03); border-radius:0 10px 10px 0; display:flex; flex-direction:column; gap:6px; font-size:14px; line-height:1.5; color:var(--muted); }
  .pricecard { position:relative; background:rgba(11,11,13,.7); border:1px solid rgba(255,255,255,.12); border-radius:20px; padding:40px; display:flex; flex-direction:column; align-items:center; gap:12px; text-align:center; backdrop-filter:blur(8px); }
  .bigprice { font-family:'Barlow Condensed',sans-serif; font-weight:800; font-size:clamp(72px, 8vw, 96px); line-height:1; color:#fff; }
  .two { display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); gap:64px; align-items:center; }
  .gallery { display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:16px; }
  .shot { position:relative; border-radius:14px; overflow:hidden; border:1px solid var(--line); }
  .shot img { width:100%; aspect-ratio:1; object-fit:cover; }
  .shot .lbl { position:absolute; top:12px; left:12px; background:rgba(11,11,13,.8); font-family:'Barlow Condensed',sans-serif; font-weight:700; font-size:12px; letter-spacing:.16em; text-transform:uppercase; padding:5px 9px; border-radius:4px; }
  .svc { padding:32px; display:flex; flex-direction:column; gap:14px; }
  .quote { margin-top:auto; font-family:'Barlow Condensed',sans-serif; font-weight:700; letter-spacing:.1em; text-transform:uppercase; font-size:14px; color:var(--gold); }
  .about { border-radius:24px; overflow:hidden; background:linear-gradient(135deg,#16161A,#0E0E11); border:1px solid var(--line); display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); align-items:stretch; }
  .about img { width:100%; height:100%; min-height:420px; object-fit:cover; }
  .about .txt { padding:64px 72px; display:flex; flex-direction:column; gap:20px; }
  .review { padding:32px; display:flex; flex-direction:column; gap:18px; }
  .review p { font-size:17px; line-height:1.6; color:#E4E4E7; }
  .who { margin-top:auto; font-family:'Barlow Condensed',sans-serif; font-weight:700; letter-spacing:.1em; text-transform:uppercase; font-size:15px; color:var(--muted); }
  .final { border-radius:24px; padding:72px; background:radial-gradient(ellipse 70% 120% at 50% 100%, rgba(225,29,46,.35) 0%, #141417 60%); border:1px solid rgba(255,255,255,.1); display:flex; align-items:center; justify-content:space-between; gap:48px; }
  footer { padding:40px 0 48px; border-top:1px solid var(--line); display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; font-size:14px; color:#71717A; }
  footer a { color:var(--muted); padding:8px 0; }
  .stars { display:flex; align-items:center; gap:4px; color:var(--gold); }
  @media (max-width: 1024px) {
    .nav-links { display:none; }
    .hero { grid-template-columns:1fr; padding:48px 0 40px; }
    .hero-photo { margin:12px auto 0; transform:none; width:min(420px, 100%); }
    .grid-3 { grid-template-columns:1fr; }
    .monthly { grid-template-columns:1fr; padding:40px 24px; gap:32px; }
    .two { grid-template-columns:1fr; gap:36px; }
    .about { grid-template-columns:1fr; } .about img { min-height:280px; max-height:360px; }
    .about .txt { padding:36px 24px; }
    .final { flex-direction:column; align-items:flex-start; padding:40px 24px; }
    .final .cta { align-items:flex-start !important; }
    .pad { padding-bottom:72px; }
    .pkg { padding:28px 24px; }
  }
  @media (max-width: 560px) {
    .wrap { width:min(1296px, 100% - 32px); }
    .nav-cta { display:none; }
    .hero .btns { flex-direction:column; align-items:stretch; }
    .hero .btns .btn { width:100%; }
    .gallery { gap:10px; }
    .strip { font-size:15px; gap:10px 16px; }
  }
  .faq { padding:22px 0; border-top:1px solid var(--line); }
  .faq:last-child { border-bottom:1px solid var(--line); }
  .faq summary { font-family:'Barlow Condensed',sans-serif; font-weight:700; font-size:22px; text-transform:uppercase; letter-spacing:.02em; cursor:pointer; list-style:none; display:flex; justify-content:space-between; align-items:center; gap:16px; }
  .faq summary::-webkit-details-marker { display:none; }
  .faq summary::after { content:"+"; font-size:26px; color:var(--red); }
  .faq[open] summary::after { content:"–"; }
  .faq p { margin-top:10px; font-size:16px; line-height:1.65; color:var(--muted); }
  .step { padding:32px; display:flex; flex-direction:column; gap:14px; }
  .num { font-family:'Barlow Condensed',sans-serif; font-weight:800; font-size:16px; letter-spacing:.2em; color:var(--red); }
  @media (max-width:1024px) { .grid-3[style*="repeat(4"] { grid-template-columns:repeat(2,minmax(0,1fr)) !important; } }
  @media (max-width:560px) { .grid-3[style*="repeat(4"] { grid-template-columns:1fr !important; } }
  .grid-3:has(> .step:nth-child(4)) { grid-template-columns:repeat(4,minmax(0,1fr)); }
  @media (max-width:1024px){ .grid-3:has(> .step:nth-child(4)) { grid-template-columns:repeat(2,minmax(0,1fr)); } }
  @media (max-width:560px){ .grid-3:has(> .step:nth-child(4)) { grid-template-columns:1fr; } }
  [hidden] { display:none !important; }
