  html, body, div, span, h1, h2, h3, p, em, img, strong, ol, ul, li, form, label, table, caption, tbody, tfoot, thead, tr, th, td, article, footer, header, nav, main, section, aside, figure, figcaption, fieldset, legend, input, button {margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;box-sizing:border-box;}
  strong {font-weight: bold;}
  body {line-height:1.4;font-family:"HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;font-weight:300;color:#000; background:#f7f5e8;overflow:auto;}
  html {scroll-behavior: smooth;}
  a {color:#5a5ae5;font-weight:bold}
  a:hover {opacity:.5;}
  a img {border: none;}
  ol,ul {margin:15px 0 15px 30px;padding:0;}
  li {margin-bottom:8px;line-height:1.5;}
  h1 {font-family: 'Trebuchet MS', 'Lucida Grande', 'Lucida Sans Unicode', 'Lucida Sans', Tahoma, sans-serif;margin:10px 0 25px 0;padding:0;line-height:108%;font-weight:normal;font-size:2.1em;color:#404040}
  h2 {font-family:'Trebuchet MS','Lucida Grande','Lucida Sans Unicode','Lucida Sans',Tahoma,sans-serif;margin:50px 0 10px 0;line-height:108%;font-weight:normal;font-size:1.8em;text-transform:uppercase;color:#404040;}
  h2 a {text-decoration:none}
  h2.center {border-top:1px solid #ddd;padding-top:35px;margin-top:50px; margin-bottom:20px;}
  h2.center[id] {scroll-margin-top: 4rem; /* adjust until headings land visually centered */}
  h3 {font-family:'Trebuchet MS','Lucida Grande','Lucida Sans Unicode','Lucida Sans',Tahoma,sans-serif;margin:20px 0 10px 0;line-height:108%;font-weight:normal;font-size:1.2em;text-transform:uppercase;color:#404040;}
   hr.style1 {clear:both;margin:40px auto;width:90%;border:0;height:1px;background:linear-gradient(to right,rgba(0,0,0,0),rgba(0,0,0,.35),rgba(0,0,0,0));}
  .subhead {color:#0D65C9;font-size:1.1em;font-weight: bold;}
  .top-bar {background:#0A56B3;width:100%;min-height:50px;}
  nav[aria-label="Primary"] {font-family:'Arial Narrow', Arial, sans-serif, Helvetica, sans-serif;margin:0 auto;padding-top:10px;max-width:1024px;font-size:20px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;}
  nav[aria-label="Primary"] ul {list-style:none;margin:0;padding:0;display:flex;align-items:center;flex-wrap:wrap;  gap:8px 0;}
  nav[aria-label="Primary"] ul li {padding:0 12px;white-space:nowrap;}
  nav[aria-label="Primary"] a {text-decoration:none;color:white;}
  .menu-toggle,.menu-button {display:none;}
  .site-title {display:none;}
  .site-search {margin-left:auto;display:flex;align-items:center;gap:6px;}
  .site-search input[type="search"] {padding:4px 6px;font-size:14px;line-height:1.2;border:1px solid #999;border-radius:2px;background:#fff;color:#000;}
  .site-search button {padding:4px 8px;font-size:14px;line-height:1.2;border:1px solid #777;border-radius:2px;background:#eee;color:#000;cursor:pointer;}
  nav[aria-label="Primary"] .site-search {order:2;margin-left:auto;}
  nav[aria-label="Primary"] .primary-links {order:1;}
  .page-background {margin:0 auto;max-width:1024px;background-color:#fff;box-shadow:0 0 12px rgba(0,0,0,.06);position:relative;padding:20px 0;}
  .content-block {margin:0 50px;display:flex;line-height:150%;gap:20px;}
  .content-block p {margin-top:15px;}
  .column1 {flex:2;}
  .column2 {flex:1;}
  .columns3 {column-count:3;text-align:center;margin-top:-10px;column-gap:30px;}
  .columns3 ul {list-style:none;margin:0;padding:0;}
  .columns3 p {margin:0 30px;}
.jump-links {margin:0 15px;text-align: center;line-height: 1.8;word-spacing: 0.15em;}
.jump-links a {white-space: nowrap;margin: 0 0.4em;}
.back-to-top {text-align: right;font-size: 0.9rem; margin: 1em 0;}
.back-to-top a {text-decoration: none;color: #3366cc;}
.back-to-top a:hover {text-decoration: underline;}
  .breadcrumbs {font-size:.8em;color:black;}
  .breadcrumbs a:hover{	background:#e7e7dc}
  .byline {font-size: 1em;font-style:italic}
  .print-button {margin:15px auto;padding:10px 0;text-align:center;display:block; width:200px;border:1px solid #2f8e2d;border-radius:12px;background:linear-gradient(to bottom, #449e3f, #2f8e2d);font:normal 21px verdana;color:#fff;text-decoration:none;vertical-align:middle;}
  .print-button:hover,.print-button:focus {border:1px solid #3bb238;background:linear-gradient(to bottom, #52be4c, #38aa36);color:#fff;text-decoration:none;}
  .print-button:active {background:linear-gradient(to bottom, #295f26, #2f8e2d);}
  .print-button:before {content:"";display:inline-block;width:24px;height:24px;margin:0 4px -6px -4px;position:relative;left:-5px;background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAD+ElEQVRIiZ2WzYscVRTFf6/qVVVXO92d9MRxwJgZmEVgIGIwMBkN2CCkIYgLiZtZRv8FN3ETF4EILjKMm7gQXIVZupCsxlklBIngQiRIMkhnEYzNdHqquqq76n246A/6ayR4oOC+qvfuOefWu69KMAdBEBQ9zyvMezYPi4uLp65du3Z1Z2fnu2az2Zw3xxmPr1+/vp2mqT3uSpLERlFk2+22bbVa9unTp/bg4MBubGxcmU4s55HkeV7wfR8hBNZagIk4z3O01iilyPOcLMsIggBrrRzLZaYJAKjValdXVlbWgVHC8VhrPXMZY+ZVwxknGM4o3rhx4+vV1dVVIcRMHY0xo6RKqVFsrR13eDwbQKFQwBgzo95ae6z6OQ5GeWfegZQSpdREWY5TP7w3dDCFiRKNrFlryfN8YsG0+nGyoQMhxHDNhJ0ZB3Eck2UZUafHs797tNqKXBs8afrKlSbtZlij8aWmXLQErmU6z4DIcQcDsbi4WN3Y2PiwXq9/+jw+FT58LDAiQAYFwjDEOiGOLOL4CwTFCo5foaNKPDss8svjlHfPhjQajXaaps04jlt5nisA4bquv7Oz88PW1tYnpVLJF0Lw8PeYX//sUvAdhAtWWIy1aG3RBowWKAXaWIwBTMoXW2/R7Xax1hJFUby9vf3trVu3vhSXLl36eH9//0fH6TsTQvDbk5Tvf2oQiJcIz0f5ZbQxGANKWZQSoB0cPArSp1JUfPXZmxPNmKapWV9fPy83Nzc/GCYfvtAgcDhodmnHMUiBcWKEgPJrBVove3RTS5ZCN4HQK3Ll/Tdmdl0Yhs7FixdrslQqnZjeX77vEpaLVJZOExRAeuAI0AaWlqCXQtqBpANJBOMCx1Eul1+XxvR3h+u6owdhIGgdHfLPX00KPniyT2AM9BR0e32CNIYscfho8/yEegClFNZaR2qtOTo6mlARAt98fpbn7RU8B6QDQoCxoDRkGvIMsh54rss7ZwTtdnuizMP+kMYYOp3OjL2qgOpM8Y6BgSgahINjQwjRJ9BakyTJqN2TJGFvbw+t9Stm72NtbY1z586NOtz3fbTWyDzPzbiDu3fvcvv27Qm745geD1GtVrl37x5BECCEIE3TvoOkj9HEcrnMzZs3WVpaemX11lp2d3fpdDr0er1ReYwxRu7t7e0vLy/XXNeVACdPnqzWarXled+D/8LCwkL24MGDJ8Ox1jq7f//+vgB84AT9g8+5c+fObr1ef2+eSsdxyLIMz/NmCLrdrrl8+XK90Wj8MbilgEMJZMALgDAMlyuVyulHjx7N/BkIIQjDkCiKkFLOO/+5cOHC241G42fGjuzhrGETSODMwNX/wQvgcBAbgH8BaXRz65G9J1gAAAAASUVORK5CYII=") no-repeat left center transparent;background-size:100% 100%;}
  .social-buttons{width: 100%;margin: 0 auto;box-sizing: border-box; display: flex;justify-content: center; align-items: center; gap: 10px;}
  .social-buttons .social-btn{display: inline-flex;align-items: center;line-height: 0;text-decoration: none;border: 0;background-image: none;padding:10px 5px;}
  .social-buttons .social-btn::after{ content: none; }
  .social-buttons picture, .social-buttons img{display: block;border: 0;box-shadow: none;}
  .puzzle-hero img{width:60%;height:auto;display:block;margin:0 auto;}
  .puzzle-hero figure{margin:0;}
  .puzzle-hero figcaption {margin-top: .5em;font-weight: bold;font-style: italic;width: 90%;margin-left: auto; margin-right: auto;text-align:center}
  .puzzle-hero{margin:0 auto;text-align:center;}
  .heading {text-align: center;font-weight: bold;}
  .recent-additions {column-count:2;column-gap:40px;list-style:none;margin:20px 0 0;padding:0;}
  .recent-additions li {break-inside:avoid;margin-bottom:8px;}
  .callouts {list-style:none;margin:20px 0 0;padding:0;display:grid;grid-template-columns:repeat(2, 1fr);gap:25px;}
  .callouts li {text-align:center;padding:20px;border:1px solid #bbb;border-radius:12px;background:#fff;}
   .callouts a {display:block;margin-bottom:12px;font-size:1.1em;text-decoration:none;}
  .callouts picture,.callouts img {display:block;margin:15px auto 0;}
  .callout-title {display:block;font-size:1.1em;font-weight:bold;margin-bottom:12px;}
  .callouts p {font-size:1rem;font-weight:normal;text-align:center;margin:10px 0 15px;color:#000;}
  .resource-box {margin: 25px 0;padding: 12px 15px;background: #fafafa;border: 1px solid #ddd;border-radius: 4px;font-size: 0.95em;}
  .resource-box h2 {font-size: 1.05em;margin: 0 0 8px;}
  .float-image-left {float:left;margin:0 20px 10px 0;}
  .float-image-left img {display:block;}
  .float-image-left p {text-align: center;font-weight: bold;}
  .float-image-right {float:right;margin:0 20px 10px 0;}
  .float-image-right img {display:block;}
  .float-image-right p {text-align: center;font-weight: bold;}
  .float-image-center {margin:0 auto 10px;text-align:center;}
  .float-image-center img {display:block;margin:20px auto;}
  .float-image-center p {text-align:center;font-weight:bold;}
  .vocab-table { width: 100%;  border-collapse: collapse;  margin: 1em 0;}
  .vocab-table th,.vocab-table td {border: 1px solid rgba(0,0,0,.15); padding: 8px 10px;text-align: left;}
  .vocab-table th {background: rgba(0,0,0,.05);}
  .related-links {border-top:1px solid #ddd;margin-top:40px;padding-top:25px;}
  .related-links ul {list-style:none;margin:20px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:12px;justify-content:center;}
  .related-links li {flex:0 1 180px;min-height:300px;line-height:100%;text-align:center;}
  .related-links a {display:block;padding:12px;text-decoration:none;}
  .related-links picture,.related-links img {display:block;margin:0 auto;}
  .related-links img {width:100%;height:auto;border:1px grey solid;-webkit-box-shadow:0 10px 6px -6px #777;-moz-box-shadow:0 10px 6px -6px #777;box-shadow:0 10px 6px -6px #777;margin-bottom:8px;}
  .related-links p {width:100%;margin:1em auto 0;font-style:italic}
  .category-link { margin: 1.25rem 0 0.75rem; text-align: center; }
  .category-link a { text-decoration: none;font-weight:normal; }
  .category-link a:hover { text-decoration: underline; }
  .ptp-newsletter,.ptp-newsletter * {box-sizing: border-box;}
  .ptp-newsletter {max-width: 720px;margin: 2rem auto;padding: 1.25rem 1.25rem 1rem;border: 1px solid rgba(0,0,0,.12);border-radius: 14px;background: #fff;box-shadow: 0 4px 12px rgba(0,0,0,.06);box-sizing: border-box;}
  .ptp-newsletter h2 {font-size: 1.35rem;margin: 0 0 .25rem;}
  .ptp-newsletter p { margin: .5rem 0; }
  .ptp-newsletter form { margin-top: .75rem; }
  .ptp-newsletter .form-row { margin: .75rem 0; }
  .ptp-newsletter label {display: block;font-weight: 600;margin-bottom: .35rem;}
  .ptp-newsletter input[type="text"],
  .ptp-newsletter input[type="email"],
  .ptp-newsletter select {width: 100%;padding: .6rem .7rem;border: 1px solid rgba(0,0,0,.22);border-radius: 8px;font-size: 1rem;line-height: 1.3;}
  .ptp-newsletter .form-row-checkbox {display: grid;grid-template-columns: 1.25rem auto;gap: .6rem;align-items: start;}
  .ptp-newsletter input[type="checkbox"] {width: 1.1rem; height: 1.1rem;}
  .ptp-newsletter button[type="submit"] {display: inline-block;margin-top: .5rem;padding: .7rem 1rem;border: none;border-radius: 999px;font-size: 1rem;font-weight: 700;cursor: pointer;background: #204ecf; color: #fff;}
  .ptp-newsletter button[type="submit"]:hover { filter: brightness(1.05); }
  .ptp-newsletter button[type="submit"]:active { transform: translateY(1px); }
  .ptp-newsletter input:focus-visible,
  .ptp-newsletter select:focus-visible,
  .ptp-newsletter button:focus-visible,
  .ptp-newsletter a:focus-visible {outline: 3px solid #204ecf; outline-offset: 2px;}
  .ptp-newsletter .form-note { font-size: .9rem; color: #444; margin-top: .5rem; }
  .visually-hidden {position: absolute !important;height: 1px; width: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; border: 0; padding: 0; margin: -1px;}
  .puzzle-categories-block nav[aria-label="Puzzle Categories"] {display:grid;grid-template-columns:repeat(4, 1fr);gap:24px;margin-top:30px;padding:20px 0;border-top:1px solid #ddd;}
  .puzzle-category-group h3 {margin-bottom:8px;font-size:1.1em;color:#404040;}
  .puzzle-category-group ul {list-style:none;margin:0;padding:0;}
  .puzzle-category-group li {line-height:140%;margin-bottom:4px;}
  .puzzle-category-group a {text-decoration:none;}
  .full-width-block{margin:0 50px;}
  .footer{margin-top:40px;padding:25px 0;border-top:1px solid #ddd;text-align:center;}
  .footer ul {list-style:none;margin:0;padding:0;display:flex;justify-content:center;gap:25px;flex-wrap:wrap;}
  .footer li{margin:0;padding:0;}
  .footer a{text-decoration:none;}
  .footer p{margin-top:25px;font-size:.9em;}

  @media (max-width:940px) {
    .top-bar {min-height:85px;}
    nav[aria-label="Primary"] {justify-content:center;}
    .site-search {width:100%;justify-content:center;margin-left:0;}
    .columns3 {column-count:1;}
    } 

  @media (max-width:675px) {
    .site-title {display:block;grid-column:1 / -1;grid-row:1;justify-self:center;color:white;text-decoration:none;font-weight:bold;white-space:nowrap;}
    .desktop-home-link {display:none;}
    nav[aria-label="Primary"] {display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:10px;}
    nav[aria-label="Primary"] .site-search {grid-column:1 / -1;grid-row:2;justify-self:center;margin-left:0;width:auto;}
    nav[aria-label="Primary"] .site-search {grid-column:1 / -1;grid-row:2;justify-self:center;margin-left:0;width:auto;}
    nav[aria-label="Primary"] .primary-links {display:none;grid-column:1 / -1;list-style:none;margin:10px 0 0;padding:0;}
    nav[aria-label="Primary"] .primary-links li {padding:8px 0;}
    nav[aria-label="Primary"] .primary-links a {display:block;}
    .menu-toggle {display:none;}
    .menu-button {display:block;grid-column:1;grid-row:1;color:white;font-weight:bold;cursor:pointer;white-space:nowrap;font-size:1.5em;}
    .menu-toggle:checked ~ .primary-links {display:block;}
    .content-block {flex-direction:column;margin:0 20px;}
    .column1,.column2 {flex:none;width:100%;}
    .puzzle-hero img {width:80%}
     .callouts {flex-direction:column;}
    .related-links li {flex:1 1 100%;max-width:300px;}
    .related-links a {width:100%;}
    .ptp-newsletter {max-width:100%;}
    .puzzle-categories-block nav[aria-label="Puzzle Categories"] {grid-template-columns:repeat(2, 1fr);gap:20px;}
    .footer ul {grid-template-columns:1fr;gap:12px;}
    .float-image-left,.float-image-right {float:none;margin:20px auto;text-align:center;}
    .float-image-left img,.float-image-right img {display:block;margin:0 auto;}
  }
