/* Namm Massage — text pages (legal, articles, blog, 404, designed pages). */

.pg-head{padding:2.2rem 0 1.6rem}
.pg-head h1{font-size:clamp(2.4rem,8.5vw,3.8rem);margin:.2rem 0 .7rem;max-width:20ch}
.pg-lead{font-size:1.15rem;line-height:1.6;color:var(--namm-muted);max-width:42rem;margin:0 0 1rem}
.pg-meta{margin:0;font-size:.88rem;letter-spacing:.04em;color:var(--namm-accent-ink)}
.pg-cover{margin:.5rem auto 0}
.pg-cover img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:1.2rem}

/* Layout: single readable column; with a table of contents on desktop */
.pg-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:1.2rem;padding-top:.8rem;padding-bottom:3.5rem}
.pg-prose{max-width:46rem;padding:0;margin:0}

/* Table of contents */
.pg-toc details{background:#FBF7F1;border:1px solid var(--namm-line);border-radius:var(--namm-radius);padding:.2rem 1.1rem}
.pg-toc summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:.8rem 0;font:600 .82rem/1 var(--namm-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--namm-accent-ink)}
.pg-toc summary::-webkit-details-marker{display:none}
.pg-toc summary .namm-i{transition:transform .2s}
.pg-toc details[open] summary .namm-i{transform:rotate(180deg)}
.pg-toc ol{list-style:none;margin:0;padding:0 0 .8rem;counter-reset:toc;display:grid;gap:.1rem}
.pg-toc li{counter-increment:toc}
.pg-toc a{display:flex;gap:.7rem;padding:.4rem 0;text-decoration:none;font-size:.95rem;line-height:1.35}
.pg-toc a::before{font-variant-numeric:lining-nums;content:counter(toc,decimal-leading-zero);font:600 1rem/1.3 var(--namm-serif);color:var(--namm-accent);min-width:1.6rem}
.pg-toc a:hover{color:var(--namm-accent-ink)}

/* Typography of the content */
.pg-prose h2{font-size:clamp(1.8rem,5.6vw,2.4rem);margin:2.6rem 0 .9rem;scroll-margin-top:calc(var(--namm-header-h) + 1rem)}
.pg-prose h2:first-child{margin-top:0}
.pg-prose h3{font-size:1.45rem;margin:1.8rem 0 .5rem}
.pg-prose p{margin:0 0 1.1em}
.pg-prose strong{font-weight:500}
.pg-prose a{color:var(--namm-accent-ink);text-decoration-thickness:1px}
.pg-prose a:hover{color:var(--namm-ink)}
.pg-prose ul,.pg-prose ol{margin:0 0 1.2em;padding-left:1.2rem}
.pg-prose li{margin:.35em 0;padding-left:.2rem}
.pg-prose ul.pg-list{list-style:none;padding:0;display:grid;gap:.55rem}
.pg-prose ul.pg-list li{position:relative;padding-left:1.5rem;margin:0}
.pg-prose ul.pg-list li::before{content:"";position:absolute;left:0;top:.82em;width:.7rem;height:1px;background:var(--namm-accent)}
.pg-prose blockquote{margin:1.6rem 0;padding:.2rem 0 .2rem 1.2rem;border-left:2px solid var(--namm-accent);font:400 1.3rem/1.5 var(--namm-serif)}
.pg-prose hr{border:0;border-top:1px solid var(--namm-line);margin:2.4rem 0}
.pg-prose img{border-radius:var(--namm-radius)}

/* Pressure level cards (numbered) */
.pg-levels{display:grid;gap:.9rem;margin:1.4rem 0 1.6rem;counter-reset:lvl}
.pg-level{counter-increment:lvl;position:relative;background:#FBF7F1;border:1px solid rgba(217,199,178,.7);border-radius:var(--namm-radius);padding:1.2rem 1.2rem 1.1rem 4rem;box-shadow:0 1px 2px rgba(43,33,27,.05),0 10px 22px -14px rgba(43,33,27,.25)}
.pg-level::before{font-variant-numeric:lining-nums;content:counter(lvl);position:absolute;left:1.1rem;top:1.05rem;width:2.1rem;height:2.1rem;border-radius:999px;display:grid;place-items:center;border:1px solid var(--namm-accent);color:var(--namm-accent-ink);font:600 1.15rem/1 var(--namm-serif)}
.pg-level h3{margin:0 0 .25rem;font-size:1.4rem}
.pg-level__for{margin:0 0 .6rem!important;font-size:.88rem;color:var(--namm-accent-ink);line-height:1.45}
.pg-level p:last-child{margin:0;font-size:.97rem}

/* Comparison cards */
.pg-cards{display:grid;gap:.9rem;margin:1.4rem 0}
.pg-card{background:#FBF7F1;border:1px solid rgba(217,199,178,.7);border-radius:var(--namm-radius);padding:1.2rem}
.pg-card__tag{display:block;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--namm-accent-ink);margin-bottom:.3rem}
.pg-card h3{margin:0 0 .5rem;font-size:1.4rem}
.pg-card p:last-child{margin:0;font-size:.97rem}

/* Tables */
.pg-table{overflow-x:auto;margin:1.4rem 0;border:1px solid var(--namm-line);border-radius:var(--namm-radius);background:#FBF7F1;-webkit-overflow-scrolling:touch}
.pg-table table{border-collapse:collapse;width:100%;min-width:34rem;font-size:.95rem}
.pg-table th{text-align:left;font:500 .74rem/1.2 var(--namm-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--namm-accent-ink);padding:.9rem 1rem;border-bottom:1px solid var(--namm-line);background:var(--namm-surface)}
.pg-table td{padding:.85rem 1rem;vertical-align:top;border-bottom:1px solid rgba(217,199,178,.55)}
.pg-table tr:last-child td{border-bottom:0}
.pg-table td:first-child{white-space:nowrap}

/* Closing strip */
.pg-cta{background:var(--namm-surface);padding:3.2rem 0;text-align:center}
.pg-cta h2{margin-bottom:.4rem}
.pg-cta p{max-width:30rem;margin:0 auto 1.4rem;color:var(--namm-muted)}

/* Blog index */
.pg-blog{padding-bottom:4rem}
.pg-posts{list-style:none;margin:0;padding:0;display:grid;gap:1.6rem}
.pg-post a{display:grid;text-decoration:none;background:#FBF7F1;border-radius:var(--namm-radius);overflow:hidden;box-shadow:0 1px 2px rgba(43,33,27,.07),0 12px 26px -12px rgba(43,33,27,.28);transition:transform .3s,box-shadow .3s}
.pg-post__img img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.pg-post__body{display:flex;flex-direction:column;gap:.5rem;padding:1.3rem 1.3rem 1.5rem}
.pg-post h2{font-size:1.7rem;margin:0}
.pg-post__ex{color:var(--namm-muted)}
@media (hover:hover){.pg-post a:hover{transform:translateY(-5px);box-shadow:0 2px 4px rgba(43,33,27,.08),0 24px 40px -16px rgba(43,33,27,.38)}}

/* 404 */
.pg-404{padding:6rem 0 7rem;text-align:center}
.pg-404 h1{margin:0 0 .6rem}
.pg-404 p{margin:0 0 1.6rem}

@media (min-width:900px){
	.pg-head{padding:3.4rem 0 2rem}
	.pg-grid--toc{grid-template-columns:15rem minmax(0,46rem);column-gap:4rem;align-items:start;padding-bottom:5rem}
	.pg-grid--toc .pg-toc{position:sticky;top:calc(var(--namm-header-h) + 1.5rem)}
	.pg-grid:not(.pg-grid--toc){padding-bottom:5rem}
	.pg-levels{grid-template-columns:1fr}
	.pg-cards{grid-template-columns:1fr 1fr}
	.pg-posts{grid-template-columns:1fr 1fr;gap:2rem}
	.pg-post:first-child:nth-last-child(1){grid-column:1/-1}
	.pg-post:first-child:nth-last-child(1) a{grid-template-columns:1.1fr 1fr}
	.pg-post:first-child:nth-last-child(1) .pg-post__img img{height:100%;aspect-ratio:auto}
	.pg-post:first-child:nth-last-child(1) h2{font-size:2.2rem}
}
@media (max-width:899px){
	.pg-toc details:not([open]) ol{display:none}
}

/* ---------- Feedback ---------- */
.fb-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:2rem;padding-bottom:3rem}
.fb-quality{background:#FBF7F1;border:1px solid rgba(217,199,178,.7);border-radius:var(--namm-radius);padding:1.4rem 1.3rem;margin-bottom:1.6rem;box-shadow:0 1px 2px rgba(43,33,27,.05),0 12px 24px -16px rgba(43,33,27,.28)}
.fb-quality__i{width:1.8rem;height:1.8rem;color:var(--namm-accent);margin-bottom:.6rem}
.fb-quality h2{font-size:1.7rem;margin:0 0 .5rem}
.fb-quality .namm-eyebrow{margin:0 0 .5rem}
.fb-quality p{margin:0;color:var(--namm-muted)}
.fb-topics{list-style:none;margin:0;padding:0;display:grid;gap:.8rem}
.fb-topics li{display:flex;gap:.8rem;align-items:flex-start}
.fb-topics .namm-i{color:var(--namm-accent);margin-top:.3em;flex:none}
.fb-form{background:#FBF7F1;border:1px solid rgba(217,199,178,.7);border-radius:var(--namm-radius);padding:1.5rem 1.3rem 1.6rem;box-shadow:0 1px 2px rgba(43,33,27,.07),0 16px 34px -16px rgba(43,33,27,.3)}
.fb-form h2{font-size:1.9rem;margin:0 0 .3rem}
.fb-form label{display:block;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--namm-accent-ink);font-weight:500;margin:1rem 0 0}
.fb-form input,.fb-form select,.fb-form textarea{display:block;width:100%;margin-top:.4rem;padding:.85rem .9rem;border:1px solid var(--namm-line);border-radius:10px;background:var(--namm-bg);color:var(--namm-ink);font:400 1rem/1.4 var(--namm-sans);letter-spacing:0;text-transform:none}
.fb-form textarea{resize:vertical;min-height:9rem}
.fb-form input:focus,.fb-form select:focus,.fb-form textarea:focus{outline:2px solid var(--namm-accent);outline-offset:1px;background:#fff}
.fb-row{display:grid;gap:0 1rem}
.fb-error{margin:1rem 0 0;color:#8A3B2E;font-size:.92rem}
.fb-actions{display:grid;gap:.7rem;margin-top:1.3rem}
.fb-note{margin:1.1rem 0 0;font-size:.88rem;color:var(--namm-muted)}
.fb-trust{list-style:none;margin:1.1rem 0 0;padding:1rem 0 0;border-top:1px solid var(--namm-line);display:grid;gap:.5rem;font-size:.9rem}
.fb-trust li{display:flex;gap:.6rem;align-items:center}
.fb-trust .namm-i{color:var(--namm-accent)}
.fb-contact{display:inline-grid;text-align:left;margin-top:.6rem}

@media (min-width:900px){
	.fb-grid{grid-template-columns:minmax(0,1fr) minmax(0,28rem);gap:4rem;align-items:start;padding-bottom:4.5rem}
	.fb-form{position:sticky;top:calc(var(--namm-header-h) + 1.5rem)}
	.fb-row{grid-template-columns:1fr 1fr}
	.fb-actions{grid-template-columns:1fr 1fr}
}
.pg--landing .namm-gift--dark{margin-top:0}

/* Buttons inside article text keep their own colours (the generic link style must not touch them) */
.pg-prose a.namm-btn{color:var(--namm-bg);text-decoration:none;margin:.4rem 0 0;max-width:100%;text-align:center;line-height:1.25;padding-top:.9rem;padding-bottom:.9rem;height:auto;min-height:3.25rem}
.pg-prose a.namm-btn:hover{color:var(--namm-bg);background:#43362c}
.pg-prose a.namm-btn.namm-btn--ghost{color:var(--namm-ink)}
.pg-prose a.namm-btn.namm-btn--ghost:hover{color:var(--namm-ink);background:var(--namm-surface)}
@media (max-width:599px){.pg-prose a.namm-btn{display:flex;width:100%}}

/* Call-to-action callout inside articles */
.pg-callout{margin:2.4rem 0 0;padding:1.5rem 1.4rem 1.6rem;border-radius:var(--namm-radius);background:var(--namm-surface);border:1px solid rgba(217,199,178,.7)}
.pg-callout p{margin:0 0 1rem;font:400 1.3rem/1.4 var(--namm-serif)}
.pg-callout a.namm-btn{margin:0;gap:.6rem}
.pg-callout .namm-i{width:1.2rem;height:1.2rem;flex:none}
.svc-crumbs [aria-current]{color:var(--namm-muted);opacity:1}

.pg-faq{margin-top:3rem}
.pg-faq h2{margin-bottom:1rem}

/* ---------- hub and landing pages ---------- */
.lp-body{padding-bottom:2rem}
.lp-cta{display:flex;flex-wrap:wrap;gap:.7rem;margin:1.6rem 0 1.4rem}
.lp-points{list-style:none;margin:1.2rem 0 1.6rem;padding:0;display:grid;gap:.7rem}
.lp-points li{display:flex;gap:.7rem;align-items:flex-start;font:500 1.15rem/1.35 var(--namm-serif)}
.lp-points .namm-i{color:var(--namm-accent);margin-top:.25em;flex:none;width:1.15rem;height:1.15rem}
.lp-h{margin:2.4rem 0 .8rem}
.lp-text{max-width:42rem}
.lp-text p{margin:0 0 1rem}
.lp-note{font-size:.88rem;color:var(--namm-muted);max-width:42rem}
.lp-cards{margin-top:1.6rem}
.lp-tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%;border:1px solid var(--namm-line);border-radius:12px;background:#FBF7F1}
.lp-table{border-collapse:collapse;width:100%;min-width:21rem;font-size:.95rem}
.lp-table th,.lp-table td{padding:.7rem .8rem;border-bottom:1px solid var(--namm-line);text-align:right;white-space:nowrap}
.lp-table th:first-child,.lp-table td:first-child{text-align:left;white-space:normal}
.lp-table thead th{font:500 .72rem/1 var(--namm-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--namm-accent-ink)}
.lp-table tbody th{font-weight:500}
.lp-table tr:last-child>*{border-bottom:0}
.lp-table a{color:inherit;text-decoration:none;border-bottom:1px solid var(--namm-line)}
.lp-addons{list-style:none;margin:.6rem 0 0;padding:0;max-width:28rem}
.lp-addons li{display:flex;justify-content:space-between;padding:.6rem 0;border-bottom:1px solid var(--namm-line)}
.lp-addons b{font-weight:500;color:var(--namm-accent-ink)}
.lp-links{list-style:none;margin:.4rem 0 1.2rem;padding:0;display:grid;gap:.5rem}
.lp-links a{color:var(--namm-accent-ink);text-underline-offset:3px}
.lp-near{margin:1.6rem 0}
