
:root{
  --bg:#f7f2ef;--paper:#fffdfb;--ink:#171414;--muted:#665850;
  --brown:#2d211c;--brown2:#5d3b2f;--tan:#bba290;--line:#dfd0c6;--gold:#b48742;--soft:#efe5df
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.65}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.08;color:var(--ink)}
a{color:#5d3b2f;text-underline-offset:3px;font-weight:800}
.site-header{background:#bba290;color:#fff;text-align:center;padding:18px 18px 14px;border-bottom:1px solid #a98f7c}
.brand{display:inline-flex;flex-direction:column;align-items:center;text-decoration:none;color:#fff;gap:6px}
.brand img{width:120px;max-height:58px;object-fit:contain}
.brand span{font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;font-weight:900;color:#fff}
.top-actions{margin-top:10px;display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.pill,.shop-link{border:1px solid rgba(255,255,255,.82);border-radius:999px;color:#fff;text-decoration:none;padding:8px 18px;font-weight:900;background:rgba(255,255,255,.06)}
.main-nav{background:#bba290;display:flex;justify-content:center;gap:0;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid #9f8472}
.main-nav a{color:#fff;text-decoration:none;padding:15px 16px;font-weight:900}
.main-nav a.active,.main-nav a:hover{background:#a98f7c}
.search-band{background:#f4efec;border-bottom:1px solid var(--line);padding:18px}
.search-band-form{max-width:760px;margin:auto;display:flex;gap:10px;position:relative}
.search-band input{flex:1;border:1px solid var(--line);border-radius:999px;padding:14px 18px;font-size:1rem;background:#fff}
.search-band button{border:0;background:var(--brown);color:#fff;border-radius:999px;padding:0 22px;font-weight:900}
main{max-width:1180px;margin:32px auto;padding:0 18px}
.hero{background:linear-gradient(135deg,#fffdfb,#f5ece5);border:1px solid var(--line);border-radius:18px;padding:32px 28px;margin-bottom:28px}
.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:#775c46;font-weight:900;font-size:.78rem}
.hero h1{font-size:clamp(2.1rem,5vw,3.6rem);margin:8px 0 14px}
.lead{font-size:1.16rem;max-width:850px;color:#463b35}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
.actions a{border:1px solid var(--brown2);border-radius:999px;padding:10px 18px;text-decoration:none}
.actions .primary{background:var(--brown);color:#fff}
.section{margin:30px 0}
.section h2{font-size:2rem;margin-bottom:14px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.card{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:20px;text-decoration:none;color:var(--ink);display:block}
.card:hover{box-shadow:0 14px 30px rgba(45,33,28,.09);transform:translateY(-1px)}
.card strong{display:block;font-size:1.15rem;margin-bottom:8px}
.card span{display:block;color:#5f534d;font-weight:400}
.article-card{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:34px;max-width:980px;margin:auto}
.article-card h1{font-size:clamp(2rem,4vw,3.2rem);margin:8px 0 16px}
.summary-box,.shop-card{background:#f3ebe5;border-left:5px solid #8b6f5e;border-radius:10px;padding:18px;margin:24px 0}
.article-section{margin:26px 0}
.related ul{columns:2}
.breadcrumbs{max-width:980px;margin:0 auto 16px;color:#6f625b}
.category-hero{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:30px;margin-bottom:22px}
.hub-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.faq-item{border:1px solid var(--line);border-radius:10px;margin:10px 0;background:#fff;overflow:hidden}
.faq-item summary{cursor:pointer;padding:15px 18px;font-weight:900}
.faq-item div{border-top:1px solid var(--line);padding:16px 18px}
.search-suggestions{position:absolute;left:0;right:78px;top:calc(100% + 8px);z-index:50;background:#fffdfb;border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 42px rgba(36,31,28,.16);overflow:hidden;text-align:left}
.search-suggestions[hidden]{display:none}
.suggestion-item{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding:13px 15px;text-decoration:none;color:var(--ink);border-bottom:1px solid #eee7e2;background:#fffdfb}
.suggestion-item:hover,.suggestion-item:focus{outline:none;background:#f5f0f2}
.suggestion-item strong{font-size:.98rem;line-height:1.25}
.suggestion-item small{color:#6c5e56;font-weight:900;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em}
.suggestion-item span{grid-column:1 / -1;color:#665a53;font-size:.9rem;line-height:1.35}
.site-footer{text-align:center;padding:34px 18px;color:#6d625b;border-top:1px solid var(--line)}
@media(max-width:880px){.grid,.hub-grid{grid-template-columns:1fr}.related ul{columns:1}.main-nav a{padding:12px}.article-card{padding:24px}.search-suggestions{right:0}.suggestion-item{grid-template-columns:1fr}}


/* v1.1 Puros light header refinement */
.hero {
  margin-top: 0;
}

.site-header .brand {
  min-width: 0;
}

@media (max-width: 720px) {
  .site-header {
    padding: 14px 14px 12px;
  }

  .brand img {
    width: 104px;
  }

  .top-actions {
    margin-top: 8px;
  }
}


/* v2.1 header and mobile navigation refinement */
.site-header {
  padding: 16px 18px 13px;
}

.brand img {
  width: 112px;
  max-height: 54px;
}

.brand span {
  margin-top: 2px;
  font-size: .72rem;
}

.top-actions {
  margin-top: 9px;
}

.pill,
.shop-link {
  padding: 7px 17px;
  min-width: 120px;
  text-align: center;
}

.main-nav {
  padding: 12px 14px;
  gap: 10px;
  align-items: center;
}

.main-nav a {
  border: 1px solid rgba(255,255,255,.78);
  border-radius: 999px;
  padding: 8px 16px;
  margin: 0;
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1.05;
  background: rgba(255,255,255,.08);
}

.main-nav a.active,
.main-nav a:hover {
  background: rgba(255,255,255,.20);
  border-color: rgba(255,255,255,.95);
}

.search-band {
  padding: 16px 18px;
}

@media (min-width: 860px) {
  .main-nav {
    gap: 8px;
  }

  .main-nav a {
    padding: 8px 14px;
    font-size: .95rem;
  }
}

@media (max-width: 720px) {
  .site-header {
    padding: 14px 14px 12px;
  }

  .brand img {
    width: 96px;
    max-height: 46px;
  }

  .brand span {
    font-size: .7rem;
    letter-spacing: .18em;
  }

  .top-actions {
    gap: 10px;
    margin-top: 10px;
  }

  .pill,
  .shop-link {
    min-width: 128px;
    padding: 8px 16px;
    font-size: .98rem;
  }

  .main-nav {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    padding: 14px;
  }

  .main-nav a {
    width: 100%;
    padding: 10px 12px;
    min-height: 44px;
    font-size: 1rem;
    border-radius: 999px;
    background: rgba(255,255,255,.10);
  }

  .search-band {
    padding: 14px 14px;
  }

  .search-band-form {
    gap: 8px;
  }

  .search-band input {
    padding: 13px 16px;
  }

  .search-band button {
    padding: 0 18px;
    min-width: 68px;
  }

  .hero {
    padding: 26px 20px;
  }

  .hero h1 {
    font-size: clamp(2rem, 11vw, 3rem);
  }

  .lead {
    font-size: 1.08rem;
  }
}

@media (max-width: 390px) {
  .main-nav a {
    font-size: .94rem;
    padding-left: 8px;
    padding-right: 8px;
  }

  .pill,
  .shop-link {
    min-width: 116px;
  }
}


/* v6 editorial reading rhythm */
.article-card .article-section {
  margin-top: 34px;
}

.article-card .article-section h2 {
  margin-bottom: 12px;
}

.article-card .article-section p {
  max-width: 860px;
}

.article-card .summary-box + .article-section {
  margin-top: 30px;
}


/* v6.1 glossary read-more links */
.glossary-card .read-more {
  display: inline-block;
  margin-top: 14px;
  color: #5d3b2f;
  font-weight: 900;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.glossary-card:hover .read-more {
  text-decoration-thickness: 2px;
}


/* v7 history category navigation tuning */
@media (min-width: 860px) {
  .main-nav {
    gap: 6px;
  }
  .main-nav a {
    padding-left: 12px;
    padding-right: 12px;
    font-size: .92rem;
  }
}

@media (max-width: 720px) {
  .main-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.trust-footer{margin:3rem auto 0;max-width:1180px;padding:1rem 1.25rem;border-top:1px solid rgba(64,43,28,.16);display:flex;flex-wrap:wrap;gap:.75rem 1rem;font-size:.92rem;color:#594638}
.trust-footer a{color:#402b1c;text-decoration:underline;text-underline-offset:3px}.trust-footer strong{color:#2f2118}
.meta-strip{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0 1.4rem}.meta-pill{display:inline-flex;align-items:center;border:1px solid rgba(64,43,28,.16);border-radius:999px;padding:.38rem .68rem;background:#fffaf4;font-size:.86rem;color:#594638}


/* v30.1 mobile text-fit + slight logo increase */
.brand img{
  width:116px;
  max-height:56px;
}

h1,h2,h3,
.hero h1,
.article-card h1,
.article-card h2,
.section h2,
.card strong,
.breadcrumbs,
.lead,
.article-card p,
.article-card li{
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
}

.hero h1,
.article-card h1,
.article-card h2,
.section h2{
  text-wrap:balance;
}

.breadcrumbs,
.lead,
.article-card p,
.article-card li{
  text-wrap:pretty;
}

.article-card,
.hero,
.category-hero,
.summary-box,
.shop-card,
.card{
  overflow:hidden;
}

.article-card h1{
  line-height:1.02;
  max-width:100%;
}

.breadcrumbs{
  line-height:1.5;
}

@media (max-width: 720px){
  .brand img{
    width:100px;
    max-height:48px;
  }

  .article-card{
    padding:22px 18px;
  }

  .article-card h1{
    font-size:clamp(1.85rem, 7.9vw, 2.7rem);
    line-height:1.05;
    letter-spacing:-0.01em;
    margin-bottom:14px;
  }

  .hero h1{
    font-size:clamp(1.9rem, 8.1vw, 2.8rem);
    line-height:1.06;
  }

  .section h2,
  .article-card h2{
    font-size:clamp(1.65rem, 7vw, 2.35rem);
    line-height:1.08;
  }

  .lead{
    font-size:1.02rem;
  }

  .breadcrumbs{
    font-size:.98rem;
  }

  .summary-box,
  .shop-card{
    padding:16px;
  }
}

@media (max-width: 390px){
  .brand img{
    width:98px;
  }

  .article-card{
    padding:20px 16px;
  }

  .article-card h1{
    font-size:clamp(1.72rem, 7.5vw, 2.45rem);
    line-height:1.08;
  }

  .hero h1{
    font-size:clamp(1.76rem, 7.7vw, 2.5rem);
    line-height:1.08;
  }
}


@media (max-width: 720px){
  .summary-box h2{
    font-size:clamp(1.55rem, 6.6vw, 2.1rem);
    line-height:1.08;
  }
}


/* v38 expert depth tables */
.table-wrap{
  overflow-x:auto;
  margin:18px 0 24px;
}
.info-table{
  width:100%;
  border-collapse:collapse;
  background:#fffdfb;
  border:1px solid var(--line);
  border-radius:12px;
  overflow:hidden;
}
.info-table th,
.info-table td{
  border-bottom:1px solid var(--line);
  padding:13px 14px;
  text-align:left;
  vertical-align:top;
}
.info-table th{
  background:#f3ebe5;
  color:var(--ink);
  font-weight:900;
}
.info-table tr:last-child td{
  border-bottom:0;
}
@media(max-width:720px){
  .info-table th,
  .info-table td{
    padding:12px;
    font-size:.96rem;
  }
}


/* v42 mobile expert table polish */
@media(max-width:720px){
  .table-wrap{
    overflow-x:visible;
    margin:16px 0 26px;
  }
  .info-table,
  .info-table thead,
  .info-table tbody,
  .info-table tr,
  .info-table th,
  .info-table td{
    display:block;
    width:100%;
  }
  .info-table{
    border:0;
    background:transparent;
    border-radius:0;
  }
  .info-table thead{
    display:none;
  }
  .info-table tr{
    background:#fffdfb;
    border:1px solid var(--line);
    border-radius:15px;
    margin:0 0 12px;
    padding:0;
    overflow:hidden;
    box-shadow:0 8px 22px rgba(55,38,25,.045);
  }
  .info-table td{
    border:0;
    padding:13px 15px;
    font-size:.98rem;
    line-height:1.55;
  }
  .info-table td:first-child{
    background:#f3ebe5;
    font-weight:900;
    color:var(--ink);
    padding-bottom:10px;
  }
  .info-table td+td{
    padding-top:10px;
  }
  .article-card h1,
  .article-card h2{
    text-wrap:balance;
  }
}





/* v43 mobile typography hotfix */
@media(max-width:720px){
  body{
    overflow-x:hidden;
  }

  main,
  .article-card,
  .summary-box,
  .hero,
  .related{
    max-width:100%;
    box-sizing:border-box;
  }

  .article-card{
    padding-left:clamp(20px, 6vw, 28px);
    padding-right:clamp(20px, 6vw, 28px);
  }

  .summary-box{
    overflow:hidden;
    padding:clamp(22px, 6vw, 28px);
  }

  .summary-box h2{
    font-size:clamp(2rem, 8vw, 2.65rem);
    line-height:1.02;
    letter-spacing:-.025em;
    max-width:100%;
  }

  .article-card h1{
    font-size:clamp(2.45rem, 10vw, 3.25rem);
    line-height:1.02;
    letter-spacing:-.03em;
    max-width:100%;
  }

  .article-card h2{
    font-size:clamp(2.05rem, 8.4vw, 2.8rem);
    line-height:1.05;
    letter-spacing:-.025em;
    max-width:100%;
    margin-top:1.05em;
  }

  .hero h1{
    font-size:clamp(2.6rem, 10.5vw, 3.35rem);
    line-height:1.02;
    letter-spacing:-.03em;
  }

  .article-card p,
  .article-card li,
  .info-table td{
    font-size:clamp(1.02rem, 4.5vw, 1.16rem);
    line-height:1.6;
  }

  .summary-box li{
    font-size:clamp(1rem, 4.4vw, 1.12rem);
    line-height:1.55;
  }

  .meta-strip{
    gap:8px;
  }

  .meta-pill{
    max-width:100%;
    white-space:normal;
    line-height:1.25;
  }
}

@media(max-width:430px){
  .article-card h1{
    font-size:clamp(2.25rem, 9.6vw, 2.95rem);
  }

  .article-card h2{
    font-size:clamp(1.95rem, 8.1vw, 2.45rem);
  }

  .summary-box h2{
    font-size:clamp(1.9rem, 7.6vw, 2.35rem);
  }

  .article-card{
    padding-left:20px;
    padding-right:20px;
  }
}

@media(max-width:380px){
  .article-card h1{
    font-size:2.22rem;
  }

  .article-card h2,
  .summary-box h2{
    font-size:1.92rem;
  }
}


/* v43 safety: no horizontal bleed from expert blocks */
.article-card,
.summary-box,
.info-table,
.info-table tr,
.info-table td{
  min-width:0;
}
@media(max-width:720px){
  .info-table tr{
    max-width:100%;
  }
  .info-table td{
    overflow-wrap:normal;
    word-break:normal;
  }
}


/* v44 mobile heading refinement */
@media(max-width:720px){
  .article-card h2{
    font-size:clamp(1.85rem, 7.4vw, 2.35rem);
    line-height:1.08;
    letter-spacing:-.02em;
  }
  .summary-box h2{
    font-size:clamp(1.8rem, 7vw, 2.25rem);
    line-height:1.08;
  }
}
@media(max-width:430px){
  .article-card h2,
  .summary-box h2{
    font-size:clamp(1.72rem, 6.8vw, 2.08rem);
    line-height:1.1;
  }
}


/* V59 brand framework */
.brand-hero-card{display:flex;gap:1.25rem;align-items:center;flex-wrap:wrap;margin:1.25rem 0 0}
.brand-logo-box{width:150px;min-height:86px;border:1px solid rgba(91,57,35,.18);border-radius:18px;background:#fff;display:flex;align-items:center;justify-content:center;padding:1rem;box-shadow:0 10px 30px rgba(60,36,20,.08)}
.brand-logo-box img{max-width:100%;max-height:70px;object-fit:contain}
.brand-logo-placeholder{font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#6b513b;text-align:center;font-size:.86rem;line-height:1.2}
.brand-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
.brand-card{display:flex;flex-direction:column;gap:.65rem;background:#fff;border:1px solid rgba(91,57,35,.16);border-radius:22px;padding:1rem;text-decoration:none;color:inherit;box-shadow:0 10px 28px rgba(60,36,20,.06)}
.brand-card:hover{transform:translateY(-1px);box-shadow:0 14px 34px rgba(60,36,20,.10)}
.brand-card .brand-logo-box{width:100%;min-height:92px;box-shadow:none}
.brand-card strong{font-size:1.05rem}
.brand-card span{color:#5f554e;font-size:.95rem;line-height:1.45}
.source-pill{display:inline-flex;align-items:center;border:1px solid rgba(91,57,35,.18);border-radius:999px;padding:.35rem .65rem;background:#fbf7f1;font-size:.84rem;margin:.15rem .2rem .15rem 0}
.brand-note{border-left:4px solid #8a6a45;padding:.85rem 1rem;background:#fbf7f1;border-radius:14px;margin:1rem 0}
@media(max-width:640px){.brand-hero-card{align-items:flex-start}.brand-logo-box{width:132px;min-height:76px}.brand-card{border-radius:18px}}


/* V60 logo-free brand standard */
.brand-wordmark{border:1px solid rgba(91,57,35,.16);border-radius:22px;background:linear-gradient(180deg,#fff,#fbf7f1);padding:1.05rem 1.15rem;min-height:92px;display:flex;align-items:center;justify-content:center;text-align:center;font-family:Georgia,serif;font-size:1.18rem;font-weight:800;letter-spacing:.04em;color:#5a3f2f;box-shadow:0 10px 28px rgba(60,36,20,.06)}
.brand-card .brand-wordmark{width:100%}
.brand-hero-wordmark{margin:1rem 0 1.25rem;max-width:520px}
.brand-meta-row{display:flex;gap:.5rem;flex-wrap:wrap;margin:.75rem 0 0}
.brand-page-kicker{font-size:.86rem;text-transform:uppercase;letter-spacing:.12em;color:#7a614b;font-weight:800}


/* V60.1 varumarken mobile/public cleanup */
.hero h1,.article-card h1{overflow-wrap:normal;word-break:normal;max-width:100%}
.brand-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
.brand-wordmark{min-height:68px;padding:.8rem 1rem;font-size:1rem;line-height:1.2;box-shadow:0 6px 18px rgba(60,36,20,.04)}
.brand-card{gap:.45rem}
.brand-card strong{font-size:1rem}
.brand-card span{font-size:.9rem}
@media(max-width:640px){
  .hero h1{font-size:clamp(2.35rem,13vw,3.7rem);line-height:.98;letter-spacing:-.045em}
  .article-card h2{font-size:clamp(2rem,10vw,3rem);line-height:1.03}
  .brand-grid{grid-template-columns:1fr;gap:.85rem}
  .brand-card{padding:.85rem;border-radius:18px}
  .brand-wordmark{min-height:54px;padding:.68rem .85rem;font-size:.95rem;border-radius:16px}
}


/* V60.2 varumarken clean cards */
.brand-wordmark,.brand-hero-wordmark{display:none!important}
.brand-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.85rem}
.brand-card{padding:1rem 1rem 1.05rem;border-radius:18px;background:#fff;box-shadow:0 8px 20px rgba(60,36,20,.04);border:1px solid rgba(91,57,35,.14)}
.brand-card strong{font-size:1.05rem;line-height:1.25}
.brand-card span{font-size:.92rem;line-height:1.35;color:#675b52}
.brand-card:after{content:"Läs mer";font-size:.86rem;font-weight:800;color:#6a4a35;margin-top:.25rem}
@media(max-width:640px){
  .hero h1{font-size:clamp(2.15rem,11vw,3.15rem);line-height:1.02;letter-spacing:-.04em}
  .hero .lead{font-size:1.05rem;line-height:1.55}
  .article-card h2{font-size:clamp(1.85rem,8.5vw,2.55rem);line-height:1.06;letter-spacing:-.035em}
  .brand-grid{grid-template-columns:1fr;gap:.7rem}
  .brand-card{padding:.9rem .95rem;border-radius:16px}
}


/* V63.2 mobile heading fix: prevent large serif section headings from overflowing */
@media (max-width: 700px) {
  .article-card h1,
  .hero h1 {
    font-size: clamp(2.05rem, 10.5vw, 3.15rem);
    line-height: 1.03;
    letter-spacing: -0.035em;
    max-width: 100%;
  }

  .article-card h2,
  .article-section h2,
  .summary-box h2,
  .related h2 {
    font-size: clamp(1.95rem, 9.2vw, 2.75rem);
    line-height: 1.04;
    letter-spacing: -0.035em;
    max-width: 100%;
  }

  .article-card h3,
  .article-section h3 {
    font-size: clamp(1.35rem, 6.4vw, 1.85rem);
    line-height: 1.12;
    max-width: 100%;
  }

  .article-card,
  .article-section,
  .summary-box,
  .related {
    overflow-x: clip;
  }

  .article-card p,
  .article-section p,
  .summary-box p,
  .article-card li,
  .article-section li,
  .summary-box li,
  .info-table td,
  .info-table th {
    overflow-wrap: break-word;
    word-break: normal;
    hyphens: manual;
  }

  .table-wrap {
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}

@media (max-width: 420px) {
  .article-card h1,
  .hero h1 {
    font-size: clamp(1.9rem, 10vw, 2.8rem);
  }

  .article-card h2,
  .article-section h2,
  .summary-box h2,
  .related h2 {
    font-size: clamp(1.72rem, 8.6vw, 2.35rem);
  }
}

/* V67 producer register */
.register-table th {
  width: 36%;
}
@media (max-width: 700px) {
  .register-table th,
  .register-table td {
    display: block;
    width: 100%;
  }
  .register-table th {
    border-bottom: 0;
    padding-bottom: .35rem;
  }
  .register-table td {
    padding-top: .35rem;
  }
}


/* V68.2 mobile producer-register layout fix */
@media (max-width: 700px) {
  body {
    overflow-x: hidden;
  }

  main,
  .article-card,
  .hero,
  .summary-box,
  .article-section,
  .related {
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
    overflow-x: clip;
  }

  .article-card,
  .summary-box {
    padding-left: clamp(1rem, 5vw, 1.35rem);
    padding-right: clamp(1rem, 5vw, 1.35rem);
  }

  .article-card h1,
  .hero h1 {
    font-size: clamp(2rem, 10vw, 3rem);
    line-height: 1.03;
    letter-spacing: -0.04em;
    max-width: 100%;
  }

  .article-card h2,
  .article-section h2,
  .summary-box h2,
  .related h2 {
    font-size: clamp(1.75rem, 8.5vw, 2.45rem);
    line-height: 1.04;
    letter-spacing: -0.035em;
    max-width: 100%;
  }

  .article-card p,
  .article-section p,
  .summary-box p,
  .related li,
  .breadcrumbs {
    max-width: 100%;
    overflow-wrap: break-word;
    word-break: normal;
    hyphens: manual;
  }

  .table-wrap {
    width: 100%;
    max-width: 100%;
    overflow-x: visible;
  }

  .register-table,
  .register-table tbody,
  .register-table tr,
  .register-table th,
  .register-table td {
    display: block;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }

  .register-table tr {
    margin: 0 0 1rem 0;
    border-radius: 1rem;
    overflow: hidden;
  }

  .register-table th {
    border-bottom: 0;
    padding: .9rem 1rem .35rem 1rem;
  }

  .register-table td {
    padding: .35rem 1rem 1rem 1rem;
    overflow-wrap: break-word;
    word-break: normal;
    hyphens: manual;
  }

  .register-table a {
    overflow-wrap: break-word;
    word-break: normal;
  }
}

@media (max-width: 420px) {
  .article-card,
  .summary-box {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .article-card h1,
  .hero h1 {
    font-size: clamp(1.72rem, 9vw, 2.35rem);
    letter-spacing: -0.038em;
  }

  .article-card h2,
  .article-section h2,
  .summary-box h2,
  .related h2 {
    font-size: clamp(1.48rem, 7.8vw, 2rem);
    letter-spacing: -0.03em;
  }

  .lead {
    font-size: clamp(1rem, 5.2vw, 1.25rem);
    line-height: 1.55;
  }
}

/* V72 public register cleanup */
@media (max-width: 700px) {
  .article-card h2,
  .article-section h2,
  .summary-box h2,
  .related h2 {
    font-size: clamp(1.42rem, 7vw, 1.9rem);
    line-height: 1.08;
    letter-spacing: -0.025em;
  }
  .article-card {
    padding-top: clamp(1.4rem, 6vw, 2rem);
    padding-bottom: clamp(1.4rem, 6vw, 2rem);
  }
  .summary-box {
    padding-top: 1.1rem;
    padding-bottom: 1.1rem;
  }
}

/* V81 register audit refinements */
@media (max-width: 700px) {
  .brand-card {
    gap: .35rem;
  }
  .brand-card span {
    color: var(--muted);
  }
}

/* V82 register structure refinements */
.brand-card span {
  line-height: 1.35;
}
@media (max-width: 700px) {
  .brand-card {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
}

/* V83 cigarillo register SEO refinements */
.brand-card span {
  max-width: 100%;
}

/* V84 language QA typography guard */
.article-card p,
.article-section p,
.summary-box p,
.info-table td {
  hyphens: manual;
  overflow-wrap: break-word;
  word-break: normal;
}

/* V85 editorial readability pass */
.article-card .lead,
.article-card p,
.article-section p {
  text-wrap: pretty;
}
.article-card h1,
.article-card h2 {
  text-wrap: balance;
}
@media (max-width: 700px) {
  .article-card .lead {
    font-size: clamp(1.05rem, 4.2vw, 1.22rem);
  }
}

/* V89 top editorial quality blocks */
.quality-note {
  border-top: 1px solid rgba(255,255,255,.10);
  margin-top: 2rem;
  padding-top: 1.25rem;
}
.quality-note ul {
  margin-top: .75rem;
}
@media (max-width: 700px) {
  .quality-note {
    margin-top: 1.6rem;
    padding-top: 1rem;
  }
}

/* V90 law marking customer service */
details {
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 16px;
  padding: .9rem 1rem;
  margin: .75rem 0;
  background: rgba(255,255,255,.035);
}
details summary {
  cursor: pointer;
  font-weight: 700;
}
details p {
  margin-top: .75rem;
}

/* V91.3 mobile heading size hotfix */
@media (max-width: 760px) {
  .article-card h1 {
    font-size: clamp(2.15rem, 9vw, 3.1rem) !important;
    line-height: 1.02 !important;
    letter-spacing: -0.035em;
    max-width: 100%;
    overflow-wrap: break-word;
    word-break: normal;
    hyphens: manual;
  }

  .article-card .eyebrow {
    font-size: clamp(.78rem, 3.6vw, .95rem);
    letter-spacing: .18em;
  }

  .article-card .lead {
    font-size: clamp(1rem, 4.35vw, 1.15rem) !important;
    line-height: 1.58 !important;
  }

  .summary-box h2,
  .article-section h2,
  .quality-note h2 {
    font-size: clamp(1.55rem, 7.2vw, 2.15rem) !important;
    line-height: 1.08 !important;
    letter-spacing: -0.025em;
  }

  .summary-box p,
  .article-section p,
  .quality-note p,
  .article-card li {
    font-size: clamp(1rem, 4.2vw, 1.13rem);
    line-height: 1.55;
  }
}

@media (max-width: 430px) {
  .article-card h1 {
    font-size: clamp(1.95rem, 8.6vw, 2.55rem) !important;
    line-height: 1.04 !important;
  }

  .summary-box h2,
  .article-section h2,
  .quality-note h2 {
    font-size: clamp(1.4rem, 6.6vw, 1.85rem) !important;
  }
}

@media (max-width: 370px) {
  .article-card h1 {
    font-size: clamp(1.75rem, 8.2vw, 2.25rem) !important;
  }
}

/* V92 visual publishing review */
.breadcrumbs {
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: manual;
}

.article-card,
.summary-box,
.info-card,
.quality-note {
  max-width: 100%;
  box-sizing: border-box;
}

.article-card h1,
.article-card h2,
.article-section h2,
.summary-box h2,
.quality-note h2 {
  max-width: 100%;
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: manual;
}

@media (max-width: 760px) {
  .breadcrumbs {
    font-size: clamp(.86rem, 3.65vw, 1rem);
    line-height: 1.42;
    white-space: normal;
    overflow-x: visible;
    padding: .75rem 0 .65rem;
  }

  .article-card {
    padding: clamp(1.15rem, 5vw, 1.55rem) !important;
    border-radius: 18px;
  }

  .article-card h1 {
    font-size: clamp(1.85rem, 8.1vw, 2.45rem) !important;
    line-height: 1.05 !important;
    letter-spacing: -0.034em;
  }

  .article-card .lead {
    font-size: clamp(1rem, 4.1vw, 1.12rem) !important;
    line-height: 1.56 !important;
    max-width: 34rem;
  }

  .summary-box,
  .quality-note,
  .article-section {
    margin-top: 1.35rem;
  }

  .summary-box {
    padding: clamp(1rem, 4.7vw, 1.35rem) !important;
    border-radius: 16px;
  }

  .summary-box h2,
  .quality-note h2,
  .article-section h2 {
    font-size: clamp(1.32rem, 6.25vw, 1.72rem) !important;
    line-height: 1.1 !important;
    letter-spacing: -0.02em;
  }

  .summary-box p,
  .quality-note p,
  .article-section p,
  .article-card li,
  details p {
    font-size: clamp(.98rem, 4vw, 1.08rem) !important;
    line-height: 1.55 !important;
  }

  details {
    padding: .85rem .9rem !important;
    border-radius: 14px;
  }

  details summary {
    line-height: 1.3;
  }

  .brand-card {
    padding: .95rem 1rem !important;
  }

  .brand-card strong {
    font-size: clamp(1rem, 4.75vw, 1.22rem) !important;
    line-height: 1.18;
  }

  .brand-card span {
    font-size: .88rem !important;
    line-height: 1.36;
  }

  .site-search,
  .search-box,
  .search-row {
    max-width: 100%;
  }

  input[type="search"],
  .site-search input {
    min-width: 0;
  }

  button,
  .button,
  .btn,
  .brand-card,
  details summary {
    touch-action: manipulation;
  }
}

@media (max-width: 430px) {
  .article-card h1 {
    font-size: clamp(1.72rem, 7.85vw, 2.18rem) !important;
  }

  .article-card {
    padding: 1.05rem !important;
  }

  .summary-box h2,
  .quality-note h2,
  .article-section h2 {
    font-size: clamp(1.25rem, 6vw, 1.58rem) !important;
  }
}

@media (min-width: 980px) {
  .article-card h1 {
    max-width: 880px;
  }

  .article-card .lead {
    max-width: 760px;
  }
}

/* V92.1 no bad mobile breaks */
@media (max-width: 760px) {
  .summary-box h2,
  .quality-note h2 {
    font-size: clamp(1.18rem, 5.35vw, 1.55rem) !important;
    line-height: 1.12 !important;
    letter-spacing: -0.018em !important;
  }

  .summary-box,
  .quality-note {
    overflow: hidden;
  }

  .summary-box h2,
  .quality-note h2,
  .article-section h2 {
    overflow-wrap: normal;
    word-break: normal;
    hyphens: manual;
  }
}

@media (max-width: 430px) {
  .summary-box h2,
  .quality-note h2 {
    font-size: clamp(1.1rem, 5.05vw, 1.38rem) !important;
  }
}

/* V93 UX design polish */
.article-card {
  position: relative;
}

.article-card .lead {
  color: rgba(45, 33, 28, .86);
}

.article-section {
  scroll-margin-top: 96px;
}

.summary-box,
.quality-note {
  box-shadow: none;
}

.summary-box {
  border-left-width: 6px;
}

.article-card a:focus-visible,
.brand-card:focus-visible,
button:focus-visible,
details summary:focus-visible {
  outline: 3px solid rgba(112, 82, 65, .38);
  outline-offset: 3px;
}

details {
  transition: border-color .18s ease, background .18s ease;
}

details[open] {
  background: rgba(112,82,65,.055);
  border-color: rgba(112,82,65,.28);
}

details summary {
  list-style-position: outside;
}

.brand-card {
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}

@media (hover: hover) and (pointer: fine) {
  .brand-card:hover {
    transform: translateY(-1px);
    box-shadow: 0 10px 28px rgba(45, 33, 28, .08);
  }
}

@media (max-width: 760px) {
  body {
    -webkit-text-size-adjust: 100%;
  }

  main {
    overflow-x: hidden;
  }

  .breadcrumbs {
    margin-bottom: .85rem;
    color: rgba(75,55,47,.78);
  }

  .article-card {
    padding: clamp(1.05rem, 4.6vw, 1.42rem) !important;
    border-radius: 18px !important;
  }

  .article-card .eyebrow {
    margin-bottom: .65rem;
    opacity: .86;
  }

  .article-card h1 {
    margin-top: .15rem;
    margin-bottom: .9rem;
  }

  .article-card .lead {
    margin-bottom: 1.25rem;
  }

  .summary-box,
  .quality-note {
    margin-top: 1.05rem !important;
    margin-bottom: 1.3rem !important;
    padding: 1rem 1.05rem !important;
    border-radius: 15px !important;
    border-left-width: 5px !important;
  }

  .summary-box h2,
  .quality-note h2 {
    margin-bottom: .65rem !important;
  }

  .article-section {
    margin-top: 1.45rem !important;
  }

  .article-section h2 {
    margin-bottom: .55rem !important;
  }

  .article-section p + p {
    margin-top: .75rem;
  }

  .brand-grid {
    gap: .85rem !important;
  }

  .brand-card {
    border-radius: 16px !important;
    padding: .92rem .98rem !important;
  }

  .brand-card strong {
    display: block;
    margin-bottom: .32rem;
  }

  details {
    margin: .62rem 0 !important;
    padding: .82rem .9rem !important;
  }

  details summary {
    font-size: clamp(.98rem, 4.25vw, 1.1rem);
  }

  .site-search,
  .search-box,
  .search-row {
    gap: .65rem !important;
  }
}

@media (max-width: 430px) {
  .article-card {
    padding: 1rem !important;
  }

  .article-card h1 {
    font-size: clamp(1.62rem, 7.25vw, 2.05rem) !important;
    line-height: 1.07 !important;
    letter-spacing: -0.028em !important;
  }

  .summary-box h2,
  .quality-note h2,
  .article-section h2 {
    font-size: clamp(1.15rem, 5.45vw, 1.45rem) !important;
    line-height: 1.13 !important;
  }

  .breadcrumbs {
    font-size: .88rem !important;
  }
}

/* V93 compact answer pattern */
.answer-first {
  background: rgba(112,82,65,.055);
  border: 1px solid rgba(112,82,65,.16);
  border-left: 5px solid rgba(112,82,65,.52);
  border-radius: 16px;
  padding: 1rem 1.1rem;
  margin: 1.25rem 0 1.45rem;
}

.answer-first h2 {
  font-size: clamp(1.22rem, 4.8vw, 1.62rem) !important;
  line-height: 1.12 !important;
  margin: 0 0 .55rem !important;
}

.answer-first p {
  margin: 0;
}

@media (max-width: 760px) {
  .answer-first {
    padding: .9rem .95rem;
    margin: 1rem 0 1.2rem;
    border-radius: 14px;
  }
}
