/* Turnummerspecialisten site copy - shared shell CSS (header, menu, footer, base typography).
   Every rule is scoped under .tns-shell so it cannot reach XM workspace/admin chrome.
   Source: https://turnummerspecialisten.se/style.css (captured 2026-09-07).
   BUILD TOKENS: data:image/gif;base64,R0lGODlhFAATALMMAP///6GxuYmdpneOmf39/UNkc/j5+rfEymeBjWB8iLXCyPv7/EFicQAAAAAAAAAAACH5BAEAAAwALAAAAAAUABMAQARFkMlJq70ygL2JuIPBbUeBUdronVY4AqWVcitbzd1nT8PyKhjXKHZJII5I0255wQFqOyfUJtVFX1OQaKjUvohe7knIAVMiADs= and data:image/png;base64,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 are replaced with data: URIs by tools/build-site.mjs. */

/* ---------- base ---------- */

.tns-shell {
	box-sizing: content-box;
	min-width: 880px;
	letter-spacing: normal;
	word-spacing: normal;
	background-color: #ffffff;
	margin: 0;
	padding: 0 20px 20px;
	font: 12px verdana, arial, helvetica;
	line-height: 18px;
	color: #444444;
	text-align: left;
}

.tns-shell *,
.tns-shell *::before,
.tns-shell *::after {
	box-sizing: content-box;
}

/* Reproduces the 4px push the stray <p> before #main_container causes on the source home page. */
.tns-shell .tns-top-offset {
	height: 4px;
}

.tns-shell #main_container h1 {
	padding: 20px 20px 10px 0;
	margin: 0;
	font-size: 18px;
	line-height: 18px;
	font-weight: bold;
	letter-spacing: normal;
	word-spacing: normal;
	color: #333333;
}

.tns-shell #main_container h2 {
	padding: 20px 20px 10px 0;
	margin: 0;
	font-size: 18px;
	line-height: 18px;
	font-weight: bold;
	letter-spacing: normal;
	word-spacing: normal;
	color: #416271;
}

.tns-shell #main_container h3 {
	padding: 0 0 5px 0;
	margin: 0;
	font-size: 12px;
	line-height: 18px;
	font-weight: bold;
	letter-spacing: normal;
	word-spacing: normal;
	color: #333333;
}

/* The source wraps the h3 lead lines in <span style="font-size:14px">; XM's rich text sanitizer
   keeps only `color` on inline styles, so the size lives here instead. */
.tns-shell #main_container h3 span {
	font-size: 14px;
}

.tns-shell #main_container p {
	text-align: justify;
	padding: 2px 0 2px 0;
	margin: 0;
	line-height: 15px;
}

.tns-shell #main_container p.green {
	color: #111111;
}

.tns-shell #main_container img {
	display: inline;
	max-width: none;
	border: 0;
	vertical-align: baseline;
}

/* XM module wrappers are content emitters only: strip every wrapper box they add. */
.tns-shell #main_container figure,
.tns-shell #main_container section,
.tns-shell #main_container nav {
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	max-width: none;
	width: auto;
	gap: 0;
	display: block;
}

/* ---------- container ---------- */

.tns-shell #main_container {
	width: 900px;
	height: auto;
	margin: auto;
	background-color: #ffffff;
}

.tns-shell #header {
	width: 900px;
	height: auto;
	margin: auto;
}

.tns-shell #logo {
	padding: 15px 0 0 30px;
	float: left;
}

/* The source logo <img> is inline inside a bare <a>, which adds the descender line box that
   pushes #menu to y=94. Keep ImageModule's <figure>/<img> inline so that line box survives. */
.tns-shell #logo figure {
	display: inline;
}

.tns-shell #logo img {
	display: inline;
	width: 498px;
	height: 70px;
	object-fit: fill;
	border-radius: 0;
	aspect-ratio: auto;
}

.tns-shell #logo a {
	color: #0000ee;
	text-decoration: none;
}

/* ---------- menu ---------- */

.tns-shell #menu {
	width: 900px;
	height: 35px;
	padding: 0;
	clear: both;
	background-color: #416271;
}

/* NavigationModule emits <nav><div data-nav-region="desktop"><ul>...; flatten those wrappers so
   the source #menu ul rules apply unchanged. */
.tns-shell #menu nav,
.tns-shell #menu [data-nav-region="desktop"] {
	display: contents;
}

.tns-shell #menu [data-nav-region="mobile"] {
	display: none;
}

.tns-shell #menu ul {
	list-style: none;
	padding: 0 0 0 600px;
	margin: auto;
	display: block;
	width: auto;
}

.tns-shell #menu ul li {
	list-style: none;
	display: inline;
	float: left;
	width: auto;
	height: 42px;
	padding: 0;
	margin: 0;
	line-height: 37px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 13px;
}

.tns-shell #menu ul li a {
	height: 35px;
	width: auto;
	float: left;
	display: block;
	text-decoration: none;
	padding: 0 0 0 25px;
	margin: 0 3px 0 3px;
	border: 0;
	border-radius: 0;
	background: none;
	color: #fff;
	text-align: center;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 13px;
	line-height: 37px;
	font-weight: normal;
}

.tns-shell #menu ul li a:hover {
	text-decoration: none;
	color: #fff;
	background: url(data:image/gif;base64,R0lGODlhFAATALMMAP///6GxuYmdpneOmf39/UNkc/j5+rfEymeBjWB8iLXCyPv7/EFicQAAAAAAAAAAACH5BAEAAAwALAAAAAAUABMAQARFkMlJq70ygL2JuIPBbUeBUdronVY4AqWVcitbzd1nT8PyKhjXKHZJII5I0255wQFqOyfUJtVFX1OQaKjUvohe7knIAVMiADs=) no-repeat left;
}

/* The source marks the current page with a.current; NavigationModule emits no current-state class,
   so the per-page shell class carries it instead. */
.tns-shell.tns-page-home #menu ul li a[href="/"],
.tns-shell.tns-page-more #menu ul li a[href="/more"],
.tns-shell.tns-page-contact #menu ul li a[href="/contact"],
/* offert.html carries class="current" on the KONTAKT link (the source page has no menu entry of
   its own), so the arrow sits on KONTAKT there too. */
.tns-shell.tns-page-offert #menu ul li a[href="/contact"] {
	background: url(data:image/gif;base64,R0lGODlhFAATALMMAP///6GxuYmdpneOmf39/UNkc/j5+rfEymeBjWB8iLXCyPv7/EFicQAAAAAAAAAAACH5BAEAAAwALAAAAAAUABMAQARFkMlJq70ygL2JuIPBbUeBUdronVY4AqWVcitbzd1nT8PyKhjXKHZJII5I0255wQFqOyfUJtVFX1OQaKjUvohe7knIAVMiADs=) no-repeat left;
}

/* ---------- boxes ---------- */

.tns-shell .green_box {
	width: 900px;
	height: 450px;
	clear: both;
	background: #dfdfdf;
}

.tns-shell .big_box {
	width: 900px;
	height: auto;
	background: #dfdfdf;
	box-sizing: border-box;
	display: grid;
	grid-template-columns: 1fr 1fr;
	align-items: start;
}

.tns-shell .clock {
	padding: 0;
}

.tns-shell .clock .text_content {
	margin-top: 24px;
}

.tns-shell .text_content {
	width: 360px;
	height: auto;
	padding: 0 30px 30px 30px;
	text-align: left;
}

.tns-shell .text_content2 {
	width: 400px;
	height: auto;
	padding: 0 30px 30px 30px;
	text-align: left;
}

/* ---------- CTA buttons ---------- */

/* CtaButtonModule wraps its <a> in a <section> and ships Tailwind utility classes on the anchor. */
.tns-shell #main_container .read_more > section {
	display: contents;
}

.tns-shell #main_container .read_more a {
	box-sizing: content-box;
	display: block;
	width: 140px;
	height: 30px;
	float: right;
	padding: 10px;
	margin: 0;
	border: 0;
	border-radius: 0;
	background: url(data:image/png;base64,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) no-repeat left;
	line-height: 22px;
	text-align: center;
	text-decoration: none;
	color: #fff;
	font-family: verdana, arial, helvetica;
	font-size: 12px;
	font-weight: normal;
	letter-spacing: normal;
	transition: none;
	min-width: 0;
	box-shadow: none;
	opacity: 1;
	transform: none;
	cursor: pointer;
}

.tns-shell .read_more.centered {
	margin-top: 24px;
}

.tns-shell #main_container .read_more.centered a {
	float: none;
	display: block;
	margin: 0 auto;
}

/* ---------- footer ---------- */

.tns-shell #footer {
	clear: both;
	width: auto;
	height: 50px;
	color: #fff;
	background-color: #416271;
}

.tns-shell .copyright {
	float: left;
	padding-left: 10px;
	padding-top: 10px;
}

.tns-shell .footer_links {
	float: right;
	padding-right: 15px;
	padding-top: 25px;
}

.tns-shell #footer .footer_links > section,
.tns-shell #footer .footer_links > section > div {
	display: contents;
}

/* The source footer text is a bare text node at the body line-height, not a <p>. */
.tns-shell #footer .footer_links p {
	text-align: left;
	padding: 0;
	margin: 0;
	line-height: 18px;
}

.tns-shell #footer .footer_links a {
	text-decoration: none;
	color: #fff;
}

.tns-shell #footer .footer_links a:hover {
	text-decoration: underline;
	color: #fff;
}

/* ---------- body copy emitted by TextModule ---------- */

/* The source body copy under each h2 is a bare text node (line-height 18px, left aligned, no
   paragraph padding); TextModule emits <section><div><p>. */
.tns-shell #main_container .tns-body-text > section,
.tns-shell #main_container .tns-body-text > section > div {
	display: contents;
}

.tns-shell #main_container .tns-body-text p {
	text-align: left;
	padding: 0;
	margin: 0;
	line-height: 18px;
}

/* ---------- logo line box on the two XHTML-transitional pages ---------- */

/* contact.html and offert.html are served with the XHTML 1.0 Transitional doctype, which puts the
   source in limited-quirks mode: a line box holding only an image gets no strut, so the logo block
   is exactly 70px and #menu sits at y=85 instead of y=90. XM renders one document in full standards
   mode, so the strut is removed here per page instead. */
.tns-shell.tns-page-contact #logo,
.tns-shell.tns-page-offert #logo {
	line-height: 0;
}

/* The strut is what has to go, not the image's own line-height (a replaced inline box is sized by
   its margin box, so this declaration is inert for layout and only keeps the computed value equal
   to the reference). */
.tns-shell.tns-page-contact #logo img,
.tns-shell.tns-page-offert #logo img {
	line-height: 18px;
}

/* ---------- contact / offert columns ---------- */

.tns-shell #main_container #left_content {
	width: 320px;
	height: auto;
	margin: 10px;
	float: left;
	padding: 10px;
	background: none;
}

.tns-shell #main_container #right_content {
	width: 320px;
	height: auto;
	margin: 10px 0 0 0;
	float: left;
	padding: 10px;
	background: none;
}

/* The source background gif (contact_info_bg.gif) is a 404 on the live site, so the box paints
   nothing; only its fixed 481x116 geometry is reproduced. */
.tns-shell #main_container .contact_info_box {
	width: 481px;
	height: 116px;
	margin: 5px;
	background: none;
}

.tns-shell #main_container .contact_info_title {
	font-size: 14px;
	line-height: 18px;
	color: #7ea743;
	padding: 10px 0 0 15px;
	font-weight: bold;
}

.tns-shell #main_container .adress {
	clear: both;
	padding: 10px 0 0 20px;
}

/* The source has bare text nodes in these boxes. A <p> is worth avoiding in the stored content:
   innerText gives every <p> element two line breaks regardless of its display, which the source
   text nodes do not have. The content is stored as <div> and reset to the source line box here. */
.tns-shell #main_container .contact_info_title div,
.tns-shell #main_container .adress div {
	display: block;
	margin: 0;
	padding: 0;
	line-height: 18px;
	text-align: left;
}

.tns-shell #main_container .contact_info_title p,
.tns-shell #main_container .adress p {
	display: inline;
}

.tns-shell #main_container .adress a {
	color: #0000ee;
	text-decoration: underline;
}

/* ---------- contact form emitted by FormModule ---------- */

/* FormModule emits <section><form data-form-id><input type="hidden">*<div class="xm-form-field">
   <label class="inline-flex ..."><span>Label</span></label><input|textarea></div>*<button type="submit">.
   The shell maps that onto the source #contact_form / .form_row / label / input grid. */
.tns-shell #main_container #contact_form {
	width: 310px;
	height: auto;
	padding: 10px 0 0 60px;
	box-sizing: content-box;
}

.tns-shell #main_container #contact_form > section {
	display: contents;
}

.tns-shell #main_container #contact_form form {
	display: grid;
	row-gap: 0.5rem;
	width: auto;
	max-width: none;
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	gap: 0;
	row-gap: 0.5rem;
}

/* The two hidden fields (site_page_id, locale) would otherwise become grid items and add two
   row gaps to the form height. */
.tns-shell #main_container #contact_form input[type="hidden"] {
	display: none;
}

.tns-shell #main_container #contact_form .xm-form-field {
	display: grid;
	grid-template-columns: 80px 1fr;
	column-gap: 0.5rem;
	row-gap: 0;
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
}

.tns-shell #main_container #contact_form label {
	display: block;
	width: 80px;
	color: #59a5bf;
	text-align: right;
	font-family: verdana, arial, helvetica;
	font-size: 12px;
	line-height: 18px;
	font-weight: normal;
	letter-spacing: normal;
	gap: 0;
	margin: 0;
	padding: 0;
	align-items: normal;
}

.tns-shell #main_container #contact_form label span {
	display: inline;
	font: inherit;
	color: inherit;
}

/* `all: revert` drops Tailwind preflight and the XM form styles back to the browser defaults the
   source relies on (Arial 13.3333px inputs, monospace textarea, 1px/2px UA padding). */
.tns-shell #main_container #contact_form input {
	all: revert;
	width: 220px;
	height: 18px;
	border: 1px #ced6ec solid;
	background-color: #dbedf3;
	color: #000;
	box-sizing: content-box;
}

.tns-shell #main_container #contact_form textarea {
	all: revert;
	width: 220px;
	height: 120px;
	border: 1px #ced6ec solid;
	background-color: #dbedf3;
	color: #000;
	box-sizing: content-box;
	resize: both;
}

/* The source wraps the submit in .send { padding-left: calc(80px + .5rem) } with
   .send button { display: block; margin-top: 10px }. */
/* The public stylesheet declares color-scheme: dark, which makes the UA `buttonface`/`buttontext`
   system colors resolve dark grey on white. The source button is a plain light-scheme UA button. */
.tns-shell #main_container #contact_form button {
	all: revert;
	color-scheme: light;
	display: block;
	justify-self: start;
	margin-top: 10px;
	margin-left: 88px;
}

/* Turnstile is off on this site; if a site enables it the widget becomes an extra grid row. */
.tns-shell #main_container #contact_form .ensait-turnstile {
	display: none;
}

/* Turnummerspecialisten site copy - home page shell CSS.
   Source: https://turnummerspecialisten.se/ (raw/home.html). Scoped under .tns-page-home. */

/* The source home page carries <body style="min-height: 901px">; the shell owns it here because
   copied-site CSS must never style body. Content box 901 + 20px bottom padding = 921px document. */
.tns-shell.tns-page-home {
	min-height: 901px;
}

/* The product shot is an inline <img> directly inside .clock on the source, which is what creates
   the 5px descender line box between the image and the buttons (image bottom 586, buttons y 615). */
.tns-page-home .tns-clock-image figure {
	display: block;
	width: auto;
	height: auto;
}

.tns-page-home .tns-clock-image img {
	display: inline;
	width: 460px;
	height: 450px;
	object-fit: fill;
	border-radius: 0;
	aspect-ratio: auto;
}