/* Gravsteinbutikken footer (aw_footer, 2026-11-12) */
footer .awf { --awf-p: #a3185f; --awf-p2: #7a0e46; --awf-ink: #fff; --awf-mut: rgba(255,255,255,.78); --awf-line: rgba(255,255,255,.16);
	position: relative; color: var(--awf-ink); font-size: 14px; line-height: 1.55; overflow: hidden;
	background: radial-gradient(900px 420px at 8% -10%, rgba(255,255,255,.13), transparent 60%), radial-gradient(700px 380px at 100% 110%, rgba(0,0,0,.22), transparent 60%), linear-gradient(180deg, var(--awf-p), var(--awf-p2)); }
footer .awf::before { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .07;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); }
footer .awf * { box-sizing: border-box; }
footer .awf-in { position: relative; margin: 0 auto; padding: 0 clamp(16px, 3vw, 40px); }
footer .awf ul { list-style: none; margin: 0; padding: 0; }
footer .awf a { color: var(--awf-ink); text-decoration: none; }
footer .awf-ic { width: 22px; height: 22px; flex: none; display: block; }

/* trust strip */
footer .awf-trust { padding: clamp(28px, 4vw, 44px) 0 0; }
footer .awf-trust ul { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
footer .awf-trust li { display: flex; align-items: center; gap: 14px; padding: 16px 18px; border-radius: 14px; background: rgba(255,255,255,.08); border: 1px solid var(--awf-line);
	backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); transition: transform .25s ease, background .25s ease, border-color .25s ease; }
footer .awf-trust li:hover { transform: translateY(-3px); background: rgba(255,255,255,.14); border-color: rgba(255,255,255,.32); }
footer .awf-trust .awf-ic { width: 46px; height: 46px; padding: 11px; border-radius: 50%; background: #fff; color: var(--awf-p); box-shadow: 0 6px 16px rgba(0,0,0,.18); }
footer .awf-trust b { display: block; font-size: 15px; font-weight: 700; letter-spacing: .01em; }
footer .awf-trust small { display: block; color: var(--awf-mut); font-size: 13px; line-height: 1.4; }

/* columns */
footer .awf-main { padding: clamp(36px, 5vw, 60px) 0 clamp(28px, 4vw, 44px); }
footer .awf-grid { display: grid; grid-template-columns: minmax(0, 1.45fr) repeat(5, minmax(0, 1fr)); gap: clamp(24px, 3vw, 44px); }
footer .awf-logo img { display: block; width: 220px; max-width: 100%; height: auto; filter: brightness(0) invert(1); opacity: .96; }
footer .awf-tag { margin: 14px 0 18px; color: var(--awf-mut); max-width: 34ch; }
footer .awf-contact li { display: flex; align-items: flex-start; gap: 10px; margin: 0 0 9px; color: var(--awf-mut); }
footer .awf-contact .awf-ic { width: 18px; height: 18px; margin-top: 2px; opacity: .9; }
footer .awf-contact a { color: var(--awf-ink); border-bottom: 1px solid transparent; transition: border-color .2s; overflow-wrap: anywhere; }
footer .awf-contact a:hover { border-bottom-color: rgba(255,255,255,.7); }
footer .awf-col h5 { margin: 4px 0 16px; padding: 0 0 10px; position: relative; font-size: 13px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--awf-ink); }
footer .awf-col h5::after { content: ""; position: absolute; left: 0; bottom: 0; width: 28px; height: 2px; border-radius: 2px; background: rgba(255,255,255,.55); transition: width .3s ease; }
footer .awf-col:hover h5::after { width: 52px; }
footer .awf-col li { margin: 0 0 8px; }
footer .awf-col a { display: inline-flex; align-items: center; color: var(--awf-mut); transition: color .2s, transform .2s; }
footer .awf-col a::before { content: "›"; display: inline-block; width: 0; overflow: hidden; opacity: 0; font-weight: 700; transition: width .2s, opacity .2s; }
footer .awf-col a:hover, footer .awf-col a:focus-visible { color: #fff; }
footer .awf-col a:hover::before, footer .awf-col a:focus-visible::before { width: 12px; opacity: 1; }

/* payment + stamp + legal */
footer .awf-pay { border-top: 1px solid var(--awf-line); padding: 22px 0 26px; }
footer .awf-pay .awf-in { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 10px 24px; }
footer .awf-paybox { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 16px; }
footer .awf-payh { font-size: 13px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
footer .awf-chips { display: flex; flex-wrap: wrap; gap: 8px; }
footer .awf-chip { display: inline-flex; align-items: center; justify-content: center; gap: 6px; height: 40px; min-width: 66px; padding: 0 12px; border-radius: 9px; background: #fff;
	box-shadow: 0 4px 12px rgba(0,0,0,.16); transition: transform .2s ease, box-shadow .2s ease; }
footer .awf-chip:hover { transform: translateY(-2px); box-shadow: 0 8px 18px rgba(0,0,0,.22); }
footer .awf-chip img { display: block; height: 22px; width: auto; }
footer .awf-visa svg { display: block; width: 50px; height: 18px; }
footer .awf-mc svg { display: block; width: 38px; height: 25px; }
footer .awf-inv { color: #2b2f36; }
footer .awf-inv .awf-ic { width: 18px; height: 18px; color: var(--awf-p); }
footer .awf-inv b { font-size: 13px; font-weight: 700; }
footer .awf-paybox small { flex-basis: 100%; color: var(--awf-mut); font-size: 13px; }
footer .awf-made { grid-row: 1 / span 2; grid-column: 2; width: 116px; height: 116px; transform: rotate(-8deg); transition: transform .35s ease; filter: drop-shadow(0 4px 10px rgba(0,0,0,.18)); }
footer .awf-made:hover { transform: rotate(0) scale(1.05); }
footer .awf-legal { grid-column: 1; margin: 6px 0 0; color: rgba(255,255,255,.62); font-size: 12px; }

/* layout steps */
@media (max-width: 1199px) {
	footer .awf-trust ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	footer .awf-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
	footer .awf-brand { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 0 32px; align-items: start; }
	footer .awf-brand .awf-tag { margin-bottom: 0; }
	footer .awf-brand .awf-contact { grid-column: 2; grid-row: 1 / span 2; }
}
@media (max-width: 767px) {
	footer .awf-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 20px; }
	footer .awf-brand { display: block; }
	footer .awf-brand .awf-tag { margin-bottom: 16px; }
	footer .awf-pay .awf-in { grid-template-columns: minmax(0, 1fr) auto; }
	footer .awf-made { width: 92px; height: 92px; }
}
@media (max-width: 520px) {
	footer .awf-trust ul { grid-template-columns: minmax(0, 1fr); gap: 10px; }
	footer .awf-trust li { padding: 13px 14px; }
	footer .awf-trust .awf-ic { width: 40px; height: 40px; padding: 9px; }
	footer .awf-pay .awf-in { grid-template-columns: minmax(0, 1fr); }
	footer .awf-made { grid-column: 1; grid-row: auto; justify-self: center; margin: 8px 0 0; }
	footer .awf-legal { text-align: center; }
}
@media (prefers-reduced-motion: reduce) { footer .awf *, footer .awf *::before, footer .awf *::after { transition: none !important; } }
/* theme uppercases small/p in the footer → reset */
footer .awf small, footer .awf p, footer .awf li, footer .awf a, footer .awf span { text-transform: none; letter-spacing: normal; font-family: inherit; }
footer .awf-trust b { letter-spacing: .01em; }
footer .awf .awf-col h5, footer .awf .awf-payh { text-transform: uppercase; letter-spacing: .14em; }
footer .awf-vipps img { height: 26px; }
@media (max-width: 991px) { footer .awf-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 767px) { footer .awf-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
/* full width, aligned with the page content (45 px from the edge) */
footer .awf .awf-in { max-width: none; width: auto; padding-left: 45px; padding-right: 45px; }
@media (max-width: 767px) { footer .awf .awf-in { padding-left: 20px; padding-right: 20px; } }
/* copyright bar aligned with the footer/content (45 px; 20 px on phones) */
footer .aw-copyright .aw-copy-in { max-width: none; padding-left: 45px; padding-right: 45px; }
@media (max-width: 767px) { footer .aw-copyright .aw-copy-in { padding-left: 20px; padding-right: 20px; } }
