  @import url('https://fonts.googleapis.com/css2?family=Archivo:wght@600;700;900&family=IBM+Plex+Mono:wght@400;500;600&family=Source+Sans+3:wght@400;500;600&display=swap');
  :root{
    --bg:#ffffff;
    --panel:#f7f6f4;
    --panel-2:#efeeea;
    --line:#dcdad4;
    --ink:#111111;
    --ink-dim:#4a4842;
    --gold:#f0b415;
    --gold-dark:#c99000;
    --rust:#a8552f;
    --blue:#2f5fa8;
    --green:#3d7a3a;
    --red:#a83a2f;
  }
  *{box-sizing:border-box;}
  body{margin:0;background:var(--bg);color:var(--ink);font-family:'Source Sans 3',sans-serif;font-size:10.5pt;line-height:1.55;}
  .display{font-family:'Archivo',sans-serif;}
  .mono{font-family:'IBM Plex Mono',monospace;}
  a{color:inherit;cursor:pointer;}
  button{font-family:inherit;cursor:pointer;}

  .topnav{display:flex;align-items:center;justify-content:space-between;padding:14px 28px;border-bottom:2px solid var(--ink);position:sticky;top:0;background:#ffffff;z-index:50;}
  .brand{display:flex;align-items:center;gap:12px;}
  .brand-mark{display:flex;align-items:center;gap:2px;}
  .brand-mark-sq{width:9px;height:9px;background:var(--gold);}
  .navlink{font-size:11pt;letter-spacing:.02em;color:var(--ink-dim);padding:6px 10px;border-radius:3px;font-weight:600;}
  .navlink:hover{color:var(--ink);background:var(--panel);}
  .navlink.active{color:var(--ink);background:var(--panel-2);border-bottom:2px solid var(--gold);}
  .pocbadge{font-size:8.5pt;letter-spacing:.08em;text-transform:uppercase;color:#111;background:var(--panel-2);border:1px solid var(--line);padding:3px 8px;border-radius:2px;font-weight:700;}
  .signin{display:flex;align-items:center;gap:8px;font-size:10pt;color:var(--ink-dim);}
  .avatar{width:26px;height:26px;border-radius:50%;background:var(--panel-2);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:9pt;color:var(--ink);font-weight:700;}

  .wrap{max-width:1080px;margin:0 auto;padding:0 28px;}
  .hero{padding:52px 0 34px;border-bottom:1px solid var(--line);}
  .eyebrow{font-size:9.5pt;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-dim);margin-bottom:10px;font-weight:700;}
  h1.display{font-size:34px;font-weight:900;margin:0 0 8px;letter-spacing:-.01em;color:var(--ink);}
  .sub{color:var(--ink-dim);font-size:11pt;max-width:560px;}

  .gcard{border:1px solid var(--line);padding:22px;background:#fff;border-radius:4px;box-shadow:0 1px 3px rgba(0,0,0,.05);}

  .modetabs{display:flex;gap:0;margin-top:20px;border:1px solid var(--ink);width:fit-content;border-radius:3px;overflow:hidden;}
  .modetab{padding:9px 18px;font-size:10.5pt;background:#fff;color:var(--ink-dim);border:none;border-right:1px solid var(--line);font-weight:600;}
  .modetab:last-child{border-right:none;}
  .modetab.active{background:var(--gold);color:#111;font-weight:700;}

  .guidebody{display:grid;grid-template-columns:1fr 220px;gap:40px;padding:34px 0 80px;}
  .steps{display:flex;flex-direction:column;gap:0;}
  .step{padding:26px 0;border-bottom:1px solid var(--line);position:relative;transition:opacity .2s;}
  .step.dimmed{opacity:.38;}
  .stepnum{font-family:'IBM Plex Mono',monospace;font-size:9.5pt;color:var(--ink-dim);margin-bottom:6px;letter-spacing:.03em;font-weight:600;}
  .steptitle{font-size:15.5pt;font-weight:700;margin:0 0 10px;color:var(--ink);}
  .stepbody{color:var(--ink-dim);font-size:10.5pt;line-height:1.65;margin-bottom:16px;}
  .stepimgwrap{position:relative;border:1px solid var(--line);width:340px;max-width:100%;background:#fafafa;}
  .stepimg{width:100%;display:block;background:#eae8e3;}
  svg.annolayer{position:absolute;inset:0;width:100%;height:100%;}
  .toolrow{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;}
  .toolchip{display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:var(--panel);padding:7px 11px;border-radius:3px;font-size:10pt;}
  .toolchip .price{color:var(--ink);font-family:'IBM Plex Mono',monospace;font-weight:600;}
  .toolchip .buy{color:var(--ink);text-decoration:underline;text-underline-offset:2px;font-size:9.5pt;font-weight:700;}

  .videoblock{position:relative;width:340px;max-width:100%;border:1px solid var(--line);background:#1b1b1b;aspect-ratio:16/10;display:flex;align-items:center;justify-content:center;margin-bottom:14px;overflow:hidden;}
  .videolabel{position:absolute;bottom:8px;right:10px;font-size:9pt;color:#fff;font-family:'IBM Plex Mono',monospace;background:rgba(0,0,0,.6);padding:2px 6px;border-radius:2px;}
  .videocaption{position:absolute;top:10px;left:10px;font-size:8.5pt;letter-spacing:.06em;text-transform:uppercase;color:#fff;background:rgba(0,0,0,.5);padding:3px 7px;border-radius:2px;}

  .demarc{background:var(--panel);border:1px solid var(--ink);border-radius:4px;padding:22px;margin:8px 0;}
  .demarc-label{font-size:9.5pt;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);margin-bottom:10px;font-weight:700;}
  .vbtns{display:flex;gap:10px;flex-wrap:wrap;}
  .vbtn{padding:10px 16px;border:1.5px solid var(--line);background:#fff;border-radius:3px;font-size:10.5pt;color:var(--ink);font-weight:600;}
  .vbtn.selected{border-color:var(--ink);background:var(--gold);color:#111;}
  .vbtn:hover{border-color:var(--ink);}

  .comments{margin-top:20px;padding-top:20px;border-top:1px dashed var(--line);}
  .cmt{display:flex;gap:10px;margin-bottom:14px;}
  .cmt-av{width:26px;height:26px;border-radius:50%;background:var(--panel-2);flex:none;display:flex;align-items:center;justify-content:center;font-size:9pt;color:var(--ink);font-weight:700;}
  .cmt-name{font-size:10pt;font-weight:700;display:flex;align-items:center;gap:6px;color:var(--ink);}
  .badge{font-size:8pt;letter-spacing:.04em;text-transform:uppercase;background:var(--gold);color:#111;padding:2px 6px;border-radius:2px;font-weight:700;}
  .cmt-body{font-size:10pt;color:var(--ink-dim);margin-top:2px;}
  .cmt-status{font-size:8.5pt;letter-spacing:.05em;text-transform:uppercase;padding:2px 6px;border-radius:2px;margin-left:auto;font-weight:700;}
  .cmt-status.pending{color:#8a6300;background:#fdf3d9;border:1px solid #e8cf8a;}
  .cmt-status.approved{color:var(--green);background:#e9f3e8;border:1px solid #b9d9b6;}
  .addc{display:flex;flex-direction:column;gap:8px;margin-top:16px;}
  .addc-row{display:flex;gap:8px;}
  .addc input, .addc textarea{flex:1;background:#fff;border:1px solid var(--line);color:var(--ink);padding:9px 11px;border-radius:3px;font-size:10pt;font-family:inherit;}
  .addc button{background:var(--gold);color:#111;border:1px solid var(--gold-dark);padding:9px 16px;border-radius:3px;font-size:10pt;font-weight:700;align-self:flex-start;}
  .addc button:disabled{opacity:.4;cursor:default;}

  .sidebar{border-left:1px solid var(--line);padding-left:24px;}
  .sb-block{margin-bottom:26px;}
  .sb-label{font-size:9pt;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-dim);margin-bottom:10px;font-weight:700;}
  .sb-jump{display:block;font-size:10.5pt;padding:6px 0;color:var(--ink-dim);}

  .edshell{padding:24px 0 80px;}
  .edtop{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-bottom:1px solid var(--line);margin-bottom:20px;flex-wrap:wrap;gap:12px;}
  .edbtns{display:flex;gap:10px;}
  .btn{padding:9px 16px;border-radius:3px;font-size:10.5pt;border:1px solid var(--line);background:#fff;color:var(--ink);font-weight:600;}
  .btn.primary{background:var(--gold);color:#111;border-color:var(--gold-dark);font-weight:700;}
  .btn.small{padding:5px 9px;font-size:9pt;}
  .btn.danger{color:var(--red);border-color:#d9beb8;}
  .edlist{border:1px solid var(--line);}
  .edrow{padding:16px 18px;border-bottom:1px solid var(--line);background:#fff;}
  .edrow:last-child{border-bottom:none;}
  .edrow.demarcrow{background:var(--panel);}
  .edrowtop{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;}
  .edrowtop .num{font-family:'IBM Plex Mono',monospace;font-size:9.5pt;color:var(--ink);font-weight:700;}
  .edrowctrls{display:flex;gap:6px;}
  .edfield{margin-bottom:10px;}
  .edfield label{display:block;font-size:8.5pt;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-dim);margin-bottom:5px;font-weight:700;}
  .edfield textarea, .edfield input{width:100%;background:#fff;border:1px solid var(--line);color:var(--ink);padding:9px;border-radius:3px;font-size:10pt;font-family:inherit;}
  .edfield textarea{min-height:56px;resize:vertical;}
  .varpill{font-size:8.5pt;padding:2px 7px;border-radius:2px;border:1px solid var(--line);color:var(--ink-dim);font-weight:600;}
  .insertbtn{width:100%;text-align:center;padding:8px;font-size:9.5pt;color:var(--ink-dim);border:1px dashed var(--line);background:#fff;margin:2px 0;font-weight:600;}
  .insertbtn:hover{border-color:var(--ink);color:var(--ink);}
  .footnote{max-width:1080px;margin:0 auto;padding:20px 28px 50px;color:var(--ink-dim);font-size:9.5pt;border-top:1px solid var(--line);}
  .loading{padding:60px 28px;color:var(--ink-dim);}

  .sectionbar{background:var(--gold);color:#111;font-weight:800;font-size:15pt;padding:14px 22px;border-radius:4px;margin:20px 0 16px;}
  .guidecard{display:flex;align-items:stretch;padding:0;overflow:hidden;cursor:pointer;max-width:none;}
  .guidecard:hover{border-color:var(--ink);}
  .guidecard-text{flex:0 0 75%;padding:24px;}
  .guidecard-photo{flex:0 0 25%;background:#eae8e3;}
  .riflephoto{width:100%;height:100%;min-height:120px;overflow:hidden;}
  .riflephoto-lg{min-height:260px;border:1px solid var(--line);}
  .guideheader{display:grid;grid-template-columns:1fr 320px;gap:28px;padding:26px 0 10px;}
  .metarow{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line);border-radius:4px;padding:12px 16px;margin-bottom:8px;}
  .metarow-label{color:var(--ink-dim);font-weight:600;font-size:10.5pt;}
  .metarow-value{font-weight:700;font-size:10.5pt;}
  .introblock{padding:22px 0;border-top:1px solid var(--line);}
  .toolsparts{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:8px;}
  .toolslist{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:0;}
  .toolslist li{padding:9px 0;border-bottom:1px solid var(--line);font-size:10.5pt;color:var(--ink);}
  .partcard{display:flex;align-items:center;gap:12px;border:1px solid var(--line);padding:10px;border-radius:4px;margin-bottom:8px;}
  .partcard-img{width:44px;height:44px;background:var(--panel-2);border-radius:3px;flex:none;}
  .steprow{display:grid;grid-template-columns:360px 1fr;gap:26px;align-items:start;}
  .stepbullets ul{margin:0 0 10px;padding-left:18px;color:var(--ink-dim);font-size:10.5pt;line-height:1.65;}
  .instructionlist{padding-left:0!important;list-style:none;}
  .instructionlist li{margin-bottom:6px;}
  .stepbullets li{margin-bottom:6px;}
  @media (max-width:820px){ .guideheader{grid-template-columns:1fr;} .toolsparts{grid-template-columns:1fr;} .steprow{grid-template-columns:1fr;} .guidecard{flex-direction:column;} .guidecard-text{flex:none;} .guidecard-photo{flex:none;height:160px;} }

  .stepheadrow{display:flex;align-items:center;gap:12px;margin-bottom:16px;}
  .stepbadge{background:var(--gold);color:#111;font-weight:800;font-size:10.5pt;padding:6px 12px;border-radius:3px;flex:none;}
  .tipsblock{border:1px solid var(--line);background:var(--panel);border-radius:4px;padding:14px 16px;margin:10px 0;}
  .tipsblock-head{font-weight:700;font-size:10pt;margin-bottom:8px;color:var(--ink);}
  .tipsicon{margin-right:6px;}
  .tipsblock ul{margin:0;padding-left:18px;}
  .addcommentlink{display:inline-flex;align-items:center;gap:6px;background:none;border:none;color:var(--ink-dim);font-size:10pt;font-weight:600;padding:6px 0;}
  .addcommentlink:hover{color:var(--ink);}
  .chaticon{font-size:11pt;}
  .cmt-photo{display:block;margin-top:8px;max-width:220px;border-radius:4px;border:1px solid var(--line);}

  .guidegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
  .guidetile{padding:0;overflow:hidden;cursor:pointer;display:flex;flex-direction:row;align-items:stretch;}
  .guidetile:hover{border-color:var(--ink);}
  .guidetile-photo{flex:0 0 40%;background:#eae8e3;order:2;}
  .guidetile-text{flex:0 0 60%;padding:16px 18px;position:relative;display:flex;flex-direction:column;justify-content:center;order:1;}
  .guidetile-soon{cursor:default;opacity:.55;}
  .guidetile-soon:hover{border-color:var(--line);}
  .soontag{position:absolute;top:-38px;right:12px;background:var(--panel-2);border:1px solid var(--line);color:var(--ink-dim);font-size:8pt;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:3px 7px;border-radius:2px;}
  .detailtopbar{display:flex;align-items:center;gap:8px;font-size:9.5pt;color:var(--ink-dim);padding:16px 0 0;}
  .verpill{background:var(--panel-2);border:1px solid var(--line);padding:2px 8px;border-radius:3px;font-weight:700;color:var(--ink);}
  .detailtopbar-sep{color:var(--line);}
  @media (max-width:1000px){ .guidegrid{grid-template-columns:repeat(2,1fr);} }

  .wysiwyg{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:12px;}
  .annotoolbar{display:flex;gap:6px;margin-bottom:8px;flex-wrap:wrap;}
  .colorpalette{display:flex;gap:6px;margin-bottom:8px;}
  .swatchbtn{width:20px;height:20px;border-radius:50%;border:2px solid transparent;cursor:pointer;}
  .swatchbtn-active{border-color:var(--ink);}
  .annocanvas{position:relative;width:100%;aspect-ratio:4/3;border:1px solid var(--line);overflow:hidden;user-select:none;}
  .bulletedit-list{display:flex;flex-direction:column;gap:6px;margin-bottom:8px;}
  .bulletedit-row{display:flex;align-items:center;gap:8px;}
  .bulletdot{width:10px;height:10px;border-radius:50%;flex:none;}
  .bulletedit-row input{flex:1;background:#fff;border:1px solid var(--line);color:var(--ink);padding:8px 9px;border-radius:3px;font-size:10pt;font-family:inherit;}
  .bulletadd-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
  .bulletadd-row select{background:#fff;color:var(--ink);}
  .guidepicker{display:flex;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);margin-bottom:12px;}
  .guidepicker select{background:#fff;color:var(--ink);}
  @media (max-width:820px){ .wysiwyg{grid-template-columns:1fr;} }

  .tilebtns{display:flex;gap:8px;}
  .tilebtns .btn{width:104px;text-align:center;padding:7px 6px;white-space:normal;line-height:1.2;}
  .tilebtns .btn.primary{font-size:9pt;}
  .tilebtns .btn:not(.primary){font-size:8pt;}
  .guidetile-add{cursor:pointer;align-items:center;justify-content:center;border-style:dashed;}
  .guidetile-add-inner{text-align:center;padding:30px 16px;color:var(--ink-dim);font-weight:700;font-size:10.5pt;}
  .guidetile-add:hover{border-color:var(--ink);color:var(--ink);}
  .sectionbar-blank{background:var(--panel-2);color:var(--ink-dim);border:1px dashed var(--line);cursor:pointer;text-align:center;font-weight:700;}
  .sectionbar-blank:hover{border-color:var(--ink);color:var(--ink);}
  .backlink{display:inline-block;font-size:9.5pt;color:var(--ink-dim);font-weight:600;margin-bottom:14px;cursor:pointer;}
  .backlink:hover{color:var(--ink);}
  .notebanner{background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:12px 16px;font-size:9.5pt;color:var(--ink-dim);margin-bottom:16px;}

  .refnums{font-size:9.5pt;color:var(--ink-dim);margin-bottom:18px;}
  .refnums strong{color:var(--ink);}
  .guidedetailspanel{border:1px solid var(--line);border-radius:4px;padding:18px;margin:14px 0 20px;background:var(--panel);}
  .gdp-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
  .gdp-label{display:block;font-size:9pt;font-weight:700;color:var(--ink-dim);margin-bottom:8px;text-transform:uppercase;letter-spacing:.04em;}
  .gdp-grid input{width:100%;background:#fff;border:1px solid var(--line);color:var(--ink);padding:9px;border-radius:3px;font-size:10pt;font-family:inherit;}
  .skulist{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px;min-height:10px;}
  .skuchip{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--line);border-radius:3px;padding:4px 8px;font-size:9.5pt;font-family:'IBM Plex Mono',monospace;}
  .skuchip button{background:none;border:none;color:var(--ink-dim);font-size:11pt;line-height:1;padding:0;}
  .skuchip button:hover{color:var(--red);}
  @media (max-width:820px){ .gdp-grid{grid-template-columns:1fr;} }

  .docbtns{display:flex;gap:22px;}
  .docbtn{display:flex;flex-direction:column;align-items:center;gap:5px;color:var(--ink-dim);font-size:10pt;font-weight:700;cursor:default;}
  .docbtn svg{color:var(--ink-dim);}

  .docbtn-live{cursor:pointer;color:var(--ink);}
  .docbtn-live svg{color:var(--ink);}
  .docbtn-live:hover span{text-decoration:underline;}

  .videoblock-static{cursor:default;}
  .videoplaceholder-msg{color:var(--ink-dim);font-size:10pt;font-weight:600;}
  .loginbox-overlay{position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:100;display:flex;align-items:flex-start;justify-content:center;padding-top:90px;}
  .loginbox{background:#fff;border:1px solid var(--line);border-radius:6px;padding:22px;width:320px;box-shadow:0 8px 30px rgba(0,0,0,.2);}
