  :root{
    --cream:#f3ead4;        /* catalog page */
    --cream2:#e9ddbf;
    --ink:#241f1a;
    --teal:#1f6f6b;         /* mid-century teal */
    --mustard:#d99a2b;      /* mustard */
    --coral:#c95a44;        /* atomic coral */
    --brown:#5a4632;
    --rule:#c3b58f;
  }
  *{margin:0;padding:0;box-sizing:border-box}
  body{background:var(--cream);color:var(--ink);font-family:Georgia,'Times New Roman',serif;font-size:16px;line-height:1.6}
  .display{font-family:'Futura','Century Gothic','Trebuchet MS',sans-serif;letter-spacing:.01em}
  .wrap{max-width:1040px;margin:0 auto;padding:0 22px}
  a{color:var(--teal)}
  p{margin-bottom:14px}

  /* catalog masthead */
  header{background:var(--teal);color:var(--cream);border-bottom:6px solid var(--mustard)}
  header .wrap{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;padding:20px 22px}
  .brand .name{font-family:'Futura','Century Gothic',sans-serif;font-weight:bold;font-size:clamp(24px,4vw,40px);line-height:1;letter-spacing:.01em}
  .brand .name em{font-style:normal;color:var(--mustard)}
  .brand .tag{font-size:12px;letter-spacing:.14em;color:#bfe0dd;margin-top:6px;text-transform:uppercase}
  .callchip{background:var(--mustard);color:var(--ink);border-radius:2px;padding:9px 16px;text-align:center;min-width:220px}
  .callchip .lbl{font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:#5a4310}
  .callchip a{display:block;color:var(--ink);text-decoration:none;font-family:'Futura','Century Gothic',sans-serif;font-weight:bold;font-size:clamp(20px,3vw,27px);letter-spacing:.01em}

  /* hero — catalog cover */
  .hero{background:var(--cream2);border-bottom:2px solid var(--ink);padding:46px 0}
  .hero .wrap{display:grid;grid-template-columns:1.25fr .75fr;gap:34px;align-items:center}
  @media(max-width:800px){.hero .wrap{grid-template-columns:1fr}}
  .hero .badge{display:inline-block;background:var(--coral);color:#fff;font-family:'Futura','Century Gothic',sans-serif;text-transform:uppercase;letter-spacing:.1em;font-size:12px;padding:5px 12px;border-radius:2px;margin-bottom:14px}
  .hero h1{font-family:'Futura','Century Gothic',sans-serif;font-weight:bold;font-size:clamp(28px,4.6vw,46px);line-height:1.05;margin-bottom:14px}
  .hero h1 em{font-style:normal;color:var(--coral)}
  .hero p{font-size:16px;max-width:560px}
  .btn{display:inline-block;background:var(--coral);color:#fff;text-decoration:none;font-family:'Futura','Century Gothic',sans-serif;font-weight:bold;text-transform:uppercase;letter-spacing:.04em;padding:13px 24px;font-size:17px;border-radius:2px}
  .btn:hover{background:#d66b54}
  .hero .cta{margin-top:20px;display:flex;gap:14px;align-items:center;flex-wrap:wrap}
  .hero .fine{font-size:12.5px;color:var(--brown)}
  /* starburst price-tag motif */
  .tag-burst{background:var(--mustard);color:var(--ink);border:3px solid var(--ink);border-radius:50%;width:190px;height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;margin:0 auto;box-shadow:5px 6px 0 rgba(36,31,26,.25)}
  .tag-burst .k{font-family:'Futura','Century Gothic',sans-serif;text-transform:uppercase;font-size:12px;letter-spacing:.08em}
  .tag-burst .big{font-family:'Futura','Century Gothic',sans-serif;font-weight:bold;font-size:30px;line-height:1;margin:4px 0}
  .tag-burst .s{font-size:12px;max-width:150px}

  section{padding:46px 0}
  .eyebrow{font-family:'Futura','Century Gothic',sans-serif;color:var(--coral);text-transform:uppercase;letter-spacing:.16em;font-size:13px;font-weight:bold;margin-bottom:8px}
  h2{font-family:'Futura','Century Gothic',sans-serif;font-weight:bold;font-size:clamp(23px,3.6vw,34px);color:var(--ink);line-height:1.1;margin-bottom:14px}
  h3{font-family:'Futura','Century Gothic',sans-serif;font-weight:bold;color:var(--teal);font-size:18px;margin-bottom:5px}

  /* catalog grid */
  .catalog{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:0;border:2px solid var(--ink);background:var(--ink)}
  .catalog .cell{background:var(--cream);padding:20px}
  .catalog .cell:nth-child(odd){background:#f6efdc}
  .catalog .cell p{font-size:14.5px;margin:0;color:#4c4436}
  .catalog .sku{font-family:'Futura','Century Gothic',sans-serif;font-size:11px;letter-spacing:.1em;color:var(--mustard);text-transform:uppercase;margin-bottom:6px}

  .band{background:var(--cream2);border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}
  .steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:22px}
  .step{background:var(--cream);border:2px solid var(--ink);padding:18px 20px}
  .step .n{font-family:'Futura','Century Gothic',sans-serif;font-weight:bold;color:var(--coral);font-size:32px;line-height:1}
  .step p{font-size:14.5px;margin:6px 0 0;color:#4c4436}

  .split{display:grid;grid-template-columns:1.05fr .95fr;gap:38px;align-items:start}
  @media(max-width:820px){.split{grid-template-columns:1fr}}
  .spec{background:var(--teal);color:var(--cream);border:3px solid var(--ink);padding:22px 24px;box-shadow:5px 6px 0 rgba(36,31,26,.25)}
  .spec h3{color:var(--mustard);border-bottom:1px solid #3a8783;padding-bottom:8px;margin-bottom:12px}
  .spec table{width:100%;border-collapse:collapse;font-family:Georgia,serif;font-size:14px}
  .spec td{padding:7px 0;border-bottom:1px dotted #3a8783;vertical-align:top}
  .spec td:last-child{text-align:right;white-space:nowrap;color:#ffe1a8}
  .spec .note{font-size:12px;color:#bfe0dd;margin-top:12px}

  ul.plain{list-style:none;margin:12px 0}
  ul.plain li{padding-left:24px;position:relative;margin-bottom:9px;font-size:15px}
  ul.plain li::before{content:"★";position:absolute;left:0;color:var(--coral);font-size:13px}

  .areas{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:10px;margin-top:16px}
  .areas div{background:var(--cream);border:2px solid var(--ink);padding:10px 14px;font-size:14.5px}
  .areas b{color:var(--teal)}
  .areas span{color:#7d7053;font-size:12.5px;display:block}

  details{background:var(--cream);border:2px solid var(--ink);margin-bottom:9px}
  summary{cursor:pointer;font-family:'Futura','Century Gothic',sans-serif;font-weight:bold;color:var(--teal);padding:14px 18px;list-style:none;position:relative;padding-right:40px;font-size:16px}
  summary::after{content:"+";position:absolute;right:16px;top:11px;font-size:20px;color:var(--coral)}
  details[open] summary::after{content:"–"}
  details .a{padding:0 18px 15px;font-size:14.5px;color:#4c4436}

  .bigcta{background:var(--coral);color:#fff;text-align:center;padding:52px 0}
  .bigcta h2{color:#fff}
  .bigcta p{color:#ffe0d8;max-width:520px;margin:0 auto 20px;font-size:14.5px}
  .bigcta .btn{background:#fff;color:var(--coral)}

  footer{background:var(--ink);color:#9d9075;padding:30px 0;font-size:12.5px;line-height:1.6}
  footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:26px;margin-bottom:18px}
  @media(max-width:700px){footer .cols{grid-template-columns:1fr}}
  footer h4{font-family:'Futura','Century Gothic',sans-serif;color:var(--cream);font-size:13px;margin-bottom:8px;text-transform:uppercase;letter-spacing:.05em}
  footer a{color:#bdb193;text-decoration:none}
  footer .disc{border-top:1px solid #43392b;padding-top:14px;font-size:12px}

/* ==== mobile hardening (2026-08-18) ==== */
@media (max-width:430px){
  html,body{overflow-x:hidden}
  *,*::before,*::after{min-width:0}
  .wrap,.sheet,.band,section,article,header,footer,div{max-width:100%}
  table{display:block;width:100%;overflow-x:auto}
  td,th,.tab{white-space:normal}
  img,svg{max-width:100%;height:auto}
  h1,h2,h3,h4{overflow-wrap:break-word}
  a[href^="tel:"],a.btn,a.callbtn,a.phone,.cta a,.bigcta a,.stampcta a,.callchip a,.phoneplate a,.callboard a{display:inline-block;padding-top:13px;padding-bottom:13px;line-height:1.2}
  .callchip .lbl,.catalog .sku{font-size:12.5px}
}
