/*
Theme Name:   ATDT 909.se
Theme URI:    https://www.909.se/
Description:  Barntema till GeneratePress för 909.se, en engelskspråkig sajt om drum samples, breaks och trummaskiner. Arketyp G (bold/modern). Samplerns klippvy som motiv: vågform med sexton numrerade snittmarkörer under sidhuvudet, pads med hårda skuggor. Paletten Chop (panelbeige, svart gummi, padrött, bärnstensgul lysdiod), Krona One, DM Sans och Azeret Mono. Fungerar utan atdt-theme-kit.
Author:       Atdt AB
Template:     generatepress
Version:      1.0.0
Text Domain:  atdt-gp-909-se
*/

/* ===== Grund (arketyp G: stor typografi, tjocka konturer, hårda skuggor) ===== */
body {
	background: var(--atdt-bg);
	color: var(--atdt-ink);
	font-family: var(--atdt-font-body);
	font-size: 1.0625rem;
	line-height: 1.65;
}
h1, h2, h3, h4, h5, h6,
.entry-title,
.main-title {
	font-family: var(--atdt-font-display);
	font-weight: 400; /* Krona One har en vikt, och den är tung */
	color: var(--atdt-ink);
	letter-spacing: -0.02em;
	line-height: 1.12;
	overflow-wrap: break-word;
}
h1, .entry-title { font-size: clamp(1.7rem, 1.2rem + 2.4vw, 2.7rem); }
.entry-content h2 {
	font-size: clamp(1.25rem, 1.05rem + 1vw, 1.6rem);
	margin: 2.2em 0 .7em;
	padding-bottom: .35em;
	border-bottom: 4px solid var(--atdt-ink);
}
.entry-content h3 { font-size: 1.12rem; margin-top: 1.8em; }
.entry-content { font-size: 1.0625rem; }
.entry-content p, .entry-content li { max-width: 68ch; }

a { color: var(--atdt-accent); text-underline-offset: .18em; text-decoration-thickness: 2px; }
a:hover, a:focus { color: var(--atdt-ink); }
:focus-visible { outline: 3px solid var(--atdt-accent-2); outline-offset: 2px; }

/* ===== Sidhuvud: svart gummi, bred logotyp ===== */
.site-header {
	background: var(--atdt-ink);
	color: var(--atdt-bg);
}
.inside-header { padding-top: 18px; padding-bottom: 18px; }
.main-title a,
.main-title a:hover {
	font-family: var(--atdt-font-display);
	font-size: 1.9rem;
	letter-spacing: -0.04em;
	color: var(--atdt-surface);
	text-decoration: none;
}
.main-title a::after {
	content: "";
	display: inline-block;
	width: .42em;
	height: .42em;
	margin-left: .18em;
	border-radius: 50%;
	background: var(--atdt-accent-2);
	box-shadow: 0 0 10px rgba(233, 163, 27, .7);
	vertical-align: .55em;
}
.site-description { color: var(--atdt-led-dim); }
.main-navigation,
.main-navigation ul ul { background: transparent; }
.main-navigation .main-nav ul li a {
	color: var(--atdt-surface);
	font-family: var(--atdt-font-mono);
	font-size: .82rem;
	letter-spacing: .06em;
	text-transform: uppercase;
	line-height: 52px;
}
.main-navigation .main-nav ul li:hover > a,
.main-navigation .main-nav ul li:focus-within > a,
.main-navigation .main-nav ul li.current-menu-item > a {
	color: var(--atdt-led);
	background: transparent;
}
.main-navigation .main-nav ul li.current-menu-item > a {
	box-shadow: inset 0 -3px 0 var(--atdt-accent-2);
}
.menu-toggle,
.main-navigation .menu-toggle,
.main-navigation .menu-bar-items { color: var(--atdt-surface); background: transparent; }
.main-navigation.toggled .main-nav ul ul,
.has-inline-mobile-toggle .main-navigation.toggled { background: var(--atdt-ink); }
.main-navigation .menu-toggle:hover,
.main-navigation .menu-toggle:focus { color: var(--atdt-led); background: transparent; }

/* ===== Klippvyn: vågform med sexton snittmarkörer ===== */
.nine-chop {
	position: relative;
	background: var(--atdt-ink);
	border-top: 1px solid #2A2C33;
	height: 58px;
	overflow: hidden;
}
.nine-chop__wave {
	position: absolute;
	inset: 6px 0 18px 0;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='320' height='34' viewBox='0 0 320 34'%3E%3Cpath d='M0 17h6l2-13 2 26 2-20 2 14 2-8 2 4 3-2 3 1h6l2-15 2 30 2-22 2 16 2-9 2 5 3-3 3 1h6l1-16 2 32 2-24 2 18 2-10 2 6 3-3 3 1h5l2-9 2 18 2-12 2 8 3-4 3 2h6l2-15 2 30 2-22 2 16 2-9 2 5 3-3 3 1h6l2-12 2 24 2-17 2 12 3-6 3 3h4l2-16 2 32 2-24 2 18 2-10 2 6 3-3 3 1h5l2-8 2 16 2-11 2 7 3-4 3 2h6l2-14 2 28 2-20 2 14 2-8 2 4 3-2 3 1h6l2-15 2 30 2-22 2 16 2-9 2 5 3-3 3 1H320' fill='none' stroke='%23E9A31B' stroke-width='1.4' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: repeat-x;
	background-size: 320px 100%;
	opacity: .75;
}
.nine-chop__marks {
	position: absolute;
	inset: 0;
	display: grid;
	grid-template-columns: repeat(16, 1fr);
	margin: 0;
	padding: 0;
	list-style: none;
}
.nine-chop__marks li {
	position: relative;
	border-left: 1px solid rgba(248, 246, 241, .22);
	font-family: var(--atdt-font-mono);
	font-size: .62rem;
	color: var(--atdt-led-dim);
	padding: 0 0 3px 5px;
	display: flex;
	align-items: flex-end;
	margin: 0;
}
.nine-chop__marks li:nth-child(4n+1) { border-left-color: var(--atdt-accent-2); }
.nine-chop__marks li:nth-child(4n+1)::before {
	content: "";
	position: absolute;
	top: 0;
	left: -4px;
	border: 4px solid transparent;
	border-top: 6px solid var(--atdt-accent-2);
}
@media (max-width: 768px) {
	.nine-chop { height: 46px; }
	.nine-chop__marks { grid-template-columns: repeat(8, 1fr); }
	.nine-chop__marks li:nth-child(n+9) { display: none; }
	.nine-chop__marks li:nth-child(4n+1) { border-left-color: rgba(248, 246, 241, .22); }
	.nine-chop__marks li:nth-child(2n+1) { border-left-color: var(--atdt-accent-2); }
	.nine-chop__marks li:nth-child(4n+1)::before { display: none; }
}

/* ===== Innehållsyta ===== */
.one-container .site-content { padding: 48px 40px 56px; }
.one-container .container,
.separate-containers .inside-article,
.inside-article { background: transparent; }
.site.grid-container { background: transparent; }
.single .site-main,
.page .site-main {
	max-width: var(--atdt-maxwidth);
	margin-left: auto;
	margin-right: auto;
}
.entry-header { margin-bottom: 1.6em; }
.entry-meta {
	font-family: var(--atdt-font-mono);
	font-size: .78rem;
	letter-spacing: .03em;
	color: var(--atdt-muted);
	text-transform: uppercase;
}
.entry-meta a { color: var(--atdt-muted); }
.entry-meta a:hover { color: var(--atdt-accent); }
footer.entry-meta {
	margin-top: 2.4em;
	padding-top: 1em;
	border-top: 2px solid var(--atdt-ink);
}
.cat-links a, .tags-links a {
	display: inline-block;
	background: var(--atdt-ink);
	color: var(--atdt-surface);
	padding: .15em .55em;
	text-decoration: none;
}
.cat-links a:hover, .tags-links a:hover { background: var(--atdt-accent); color: var(--atdt-on-accent); }
.cat-links .gp-icon, .tags-links .gp-icon { display: none; }

/* Inbäddad Spotify och liknande ska aldrig spränga mobilbredden */
.entry-content iframe { max-width: 100%; }
.entry-content img { height: auto; }

/* Citat, tabeller, knappar (arketyp G) */
.entry-content blockquote {
	border: 2px solid var(--atdt-ink);
	background: var(--atdt-surface);
	margin: 1.8em 0;
	padding: 1em 1.2em;
	font-weight: 700;
	box-shadow: 6px 6px 0 var(--atdt-accent);
}
.entry-content table { width: 100%; border-collapse: collapse; margin: 1.8em 0; border: 2px solid var(--atdt-ink); background: var(--atdt-surface); }
.entry-content thead th { background: var(--atdt-ink); color: var(--atdt-surface); font-family: var(--atdt-font-mono); text-transform: uppercase; letter-spacing: .04em; font-size: .85rem; }
.entry-content th, .entry-content td { padding: .65em .85em; border: 1px solid var(--atdt-ink); text-align: left; }
.wp-block-button__link,
.entry-content .wp-block-button__link {
	border: 2px solid var(--atdt-ink);
	border-radius: var(--atdt-radius);
	font-family: var(--atdt-font-mono);
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: .05em;
	font-size: .82rem;
	box-shadow: 4px 4px 0 var(--atdt-accent);
	transition: transform .1s, box-shadow .1s;
}
.wp-block-button__link:hover,
.wp-block-button__link:focus { transform: translate(2px, 2px); box-shadow: 2px 2px 0 var(--atdt-accent); color: #fff; }
button, html input[type="button"], input[type="reset"], input[type="submit"], a.button {
	background: var(--atdt-ink);
	color: var(--atdt-surface);
	border-radius: var(--atdt-radius);
	font-family: var(--atdt-font-mono);
}
button:hover, input[type="submit"]:hover, a.button:hover { background: var(--atdt-accent); color: var(--atdt-on-accent); }

/* ===== Arkiv och listor: varje inlägg är en pad ===== */
.blog .site-main,
.archive .site-main,
.search .site-main {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
	gap: 26px;
	align-items: start;
}
.blog .page-header,
.archive .page-header,
.search .page-header,
.blog .paging-navigation,
.archive .paging-navigation,
.search .paging-navigation,
.archive .site-main > .nav-links { grid-column: 1 / -1; }
.archive .page-header,
.search .page-header {
	background: transparent;
	padding: 0 0 .6em;
	margin-bottom: 0;
	border-bottom: 4px solid var(--atdt-ink);
}
.archive .page-title::before,
.search .page-title::before {
	content: "BANK";
	display: block;
	font-family: var(--atdt-font-mono);
	font-size: .78rem;
	letter-spacing: .12em;
	color: var(--atdt-accent);
	margin-bottom: .5em;
}
.blog article.post,
.archive article.post,
.search article {
	background: var(--atdt-surface);
	border: 2px solid var(--atdt-ink);
	border-radius: var(--atdt-radius);
	box-shadow: 7px 7px 0 var(--atdt-ink);
	margin: 0;
	transition: transform .12s, box-shadow .12s;
}
.blog article.post:hover,
.archive article.post:hover,
.search article:hover { transform: translate(-2px, -2px); box-shadow: 9px 9px 0 var(--atdt-accent); }
.blog article .inside-article,
.archive article .inside-article,
.search article .inside-article { padding: 24px 24px 20px; }
.blog .entry-title,
.archive .entry-title,
.search .entry-title { font-size: 1.2rem; }
.blog .entry-title a,
.archive .entry-title a,
.search .entry-title a { color: var(--atdt-ink); text-decoration: none; }
.blog .entry-title a:hover,
.archive .entry-title a:hover,
.search .entry-title a:hover { color: var(--atdt-accent); }
.blog .entry-summary,
.archive .entry-summary,
.search .entry-summary { font-size: .98rem; }
.blog footer.entry-meta,
.archive footer.entry-meta { margin-top: 1.2em; border-top-width: 1px; }
.read-more-container a, .read-more { font-family: var(--atdt-font-mono); font-size: .8rem; text-transform: uppercase; letter-spacing: .05em; }

/* ===== Startsidan: Genesis Blocks-behållarna i full bredd ===== */
.home.one-container .site-content { padding: 0; }
.home .site.grid-container { max-width: none; }
.home .inside-article { padding: 0; }
.home .entry-content { margin-top: 0; }
.home .entry-content p,
.home .entry-content li { max-width: none; }
.home .entry-content > .alignfull { margin-left: 0; margin-right: 0; max-width: none; width: 100%; }
.home .gb-block-container .gb-container-content { margin-left: auto; margin-right: auto; }
.home .entry-content h1 {
	font-size: clamp(2.3rem, 1.4rem + 4.6vw, 4.6rem);
	letter-spacing: -0.04em;
	line-height: 1.02;
	max-width: 14ch;
}
.home .entry-content h2 { border-bottom: 0; padding-bottom: 0; margin-top: 0; font-size: clamp(1.5rem, 1.2rem + 1.4vw, 2.2rem); }
.home .entry-content h3 {
	font-family: var(--atdt-font-mono);
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: .1em;
	font-size: .88rem;
	color: var(--atdt-accent);
}
.home .wp-block-columns .wp-block-column {
	background: var(--atdt-surface);
	border: 2px solid var(--atdt-ink);
	border-radius: var(--atdt-radius);
	box-shadow: 7px 7px 0 var(--atdt-ink);
	padding: 22px 22px 26px;
}
.home .brand-logos .wp-block-column { background: transparent; border: 0; box-shadow: none; padding: 0; }
.home .brand-logos img { opacity: .8; }
.home .wp-block-separator { border: 0; border-top: 4px solid var(--atdt-ink); width: 72px; margin: 1.4em 0 2em; opacity: 1; }
.light-text,
.light-text h1, .light-text h2, .light-text h3, .light-text p,
.light-text .has-text-color { color: var(--atdt-surface); }
.light-text .wp-block-separator { border-top-color: var(--atdt-accent-2); background: transparent !important; }
.light-text h1::after {
	content: "";
	display: block;
	width: 96px;
	height: 8px;
	margin-top: .35em;
	background: repeating-linear-gradient(90deg, var(--atdt-accent-2) 0 18px, transparent 18px 26px);
}
.home .gb-post-grid-items h2 { font-size: 1.05rem; }
.home .gb-block-post-grid article { background: var(--atdt-surface); border: 2px solid var(--atdt-ink); border-radius: var(--atdt-radius); padding: 18px; }
.home .gb-block-post-grid .gb-block-post-grid-title a { color: var(--atdt-ink); text-decoration: none; }
.home .gb-block-post-grid .gb-block-post-grid-byline,
.home .gb-block-post-grid .gb-block-post-grid-byline a { font-family: var(--atdt-font-mono); font-size: .76rem; color: var(--atdt-muted); }
/* Monochrome-pro tonade in fade-in-up med skript; här syns innehållet direkt */
.fade-in-up { opacity: 1; transform: none; }

/* ===== Sidfot: svart gummi med bärnstensgula länkar ===== */
.site-footer { background: var(--atdt-ink); color: var(--atdt-led-dim); }
.site-info,
.site-footer .site-info,
.inside-site-info {
	background: transparent;
	color: var(--atdt-led-dim);
	padding-top: 0;
	padding-bottom: 0;
	border: 0;
}
.inside-site-info { padding: 14px 40px 26px; }
.site-info .copyright-bar,
.nine-copy { font-family: var(--atdt-font-mono); font-size: .76rem; letter-spacing: .04em; color: var(--atdt-led-dim); }
.site-info a { color: var(--atdt-led); }
.nine-band { background: var(--atdt-ink); border-top: 6px solid var(--atdt-accent); color: var(--atdt-led-dim); }
.nine-band__inner {
	max-width: 1180px;
	margin: 0 auto;
	padding: 44px 40px 30px;
	display: grid;
	grid-template-columns: 1.1fr 2fr 1fr;
	gap: 34px;
	align-items: start;
}
.nine-band__brand {
	font-family: var(--atdt-font-display);
	font-size: 2.6rem;
	line-height: 1;
	color: var(--atdt-surface);
	margin: 0;
}
.nine-band__brand span {
	display: block;
	margin-top: .6em;
	font-family: var(--atdt-font-mono);
	font-size: .74rem;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--atdt-led-dim);
}
.nine-band__title {
	font-family: var(--atdt-font-mono);
	font-weight: 500;
	font-size: .78rem;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--atdt-led-dim);
	margin: 0 0 .8em;
}
.nine-band__list { list-style: none; margin: 0; padding: 0; counter-reset: nine; }
.nine-band__list li {
	counter-increment: nine;
	display: flex;
	gap: .8em;
	padding: .45em 0;
	border-bottom: 1px solid #2A2C33;
	margin: 0;
}
.nine-band__list li::before {
	content: counter(nine, decimal-leading-zero);
	font-family: var(--atdt-font-mono);
	font-size: .76rem;
	color: var(--atdt-accent-2);
	padding-top: .2em;
}
.nine-band a { color: var(--atdt-led); text-decoration: none; }
.nine-band a:hover, .nine-band a:focus { color: var(--atdt-surface); text-decoration: underline; }
.nine-band__menu-list { list-style: none; margin: 1.9em 0 0; padding: 0; }
.nine-band__menu-list li { margin: 0 0 .5em; font-size: .95rem; }
@media (max-width: 860px) {
	.nine-band__inner { grid-template-columns: 1fr; gap: 22px; padding: 34px 20px 22px; }
	.nine-band__menu-list { margin-top: 0; }
	.inside-site-info { padding: 12px 20px 24px; }
}

/* ===== Mobil ===== */
@media (max-width: 768px) {
	.one-container .site-content { padding: 30px 18px 40px; }
	.home.one-container .site-content { padding: 0; }
	.blog .site-main, .archive .site-main, .search .site-main { grid-template-columns: 1fr; }
	.main-title a { font-size: 1.6rem; }
	.home .wp-block-columns .wp-block-column { box-shadow: 5px 5px 0 var(--atdt-ink); }
}
@media (max-width: 600px) {
	.entry-content table { table-layout: fixed; font-size: .8rem; }
	.entry-content th, .entry-content td { word-break: break-word; overflow-wrap: anywhere; }
}
@media (prefers-reduced-motion: reduce) {
	* { transition: none !important; }
}
