/* Kategoriside v3 'Philip som vaert' (CHAT-20261009-9, TASK-3900; spec agents/ux/kategoriside-v3.md). Markup: scripts/lib/category_v3.py.
   Alt ligger under body.cv3 / main.cv3 og laegges oven paa category-v2.css (v3 bygger paa cv2's sektioner). Mobil foerst (390 x 844), desktop fra 900 px.
   To skrifter: Fraunces 700 (overskrifter, /fonts/fraunces.css) og Inter. Bricolage hentes ikke paa v3 (--lc-display peges om). Bevaegelse: kun markoeren
   ved indlaesning; alt andet svarer paa kundens handling; prefers-reduced-motion slaar det fra. */

body.cv3 {
    --v3-paper: #FBF8F3; --v3-paper-2: #F4EEE4; --v3-paper-3: #EADFCB; --v3-ink: #1C2033; --v3-muted: #555B6D; --v3-line: #E3D9C8; --v3-edge: #8E8574;
    --v3-navy: #172554; --v3-navy-2: #0E1838; --v3-blue: #2563EB; --v3-blue-ink: #1D4ED8; --v3-amber: #F59E0B; --v3-amber-soft: #FCE3A6;
    --v3-fest: #C2412A; --v3-sage: #2F6B4F; --v3-night-text: #B9BED0;
    --v3-display: "Fraunces", "Fraunces Fallback", Georgia, serif;
    --v3-shadow: 0 1px 2px rgba(28, 32, 51, .06), 0 8px 24px rgba(28, 32, 51, .08);
    background: var(--v3-paper);
}
/* TASK-3970 (R9): reserve med Inters bredde, intet CLS ved skriftskiftet */
@font-face { font-family: 'Inter Fallback'; src: local('Arial'), local('ArialMT'); font-weight: 400; size-adjust: 106.5%; ascent-override: 90.96%; descent-override: 22.74%; line-gap-override: 0%; }
@font-face { font-family: 'Inter Fallback'; src: local('Arial Bold'), local('Arial-BoldMT'), local('Arial'); font-weight: 500 700; size-adjust: 101.2%; ascent-override: 95.73%; descent-override: 23.93%; line-gap-override: 0%; }
main.cv3 { font-family: 'Inter', 'Inter Fallback', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; }
main.cv3 { --lc-display: var(--v3-display); --cv2-ink: var(--v3-ink); --cv2-muted: var(--v3-muted); --cv2-line: var(--v3-line); color: var(--v3-ink); background: var(--v3-paper); }
main.cv3 .container { max-width: 1200px; padding-inline: 16px; box-sizing: border-box; }
main.cv3 .cv2-sec { padding-block: 40px; }
main.cv3 .cv2-sec h2, main.cv3 .cv2-sec .price-facts__title, main.cv3 h2 { font-family: var(--v3-display); font-weight: 700; font-size: clamp(25px, 4.4vw, 38px); line-height: 1.12; letter-spacing: 0; color: var(--v3-navy); margin: 0 0 .6rem; }
main.cv3 h3 { font-family: Inter, "Inter Fallback", system-ui, sans-serif; font-weight: 700; font-size: 18px; line-height: 1.3; color: var(--v3-ink); }
main.cv3 a { color: var(--v3-blue-ink); }
main.cv3 .v3-mod { display: block; }

/* ---- knapper og chips ---- */
main.cv3 .v3-btn, main.cv3 .cv2-btn.v3-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: 0 1.5rem; border-radius: 999px; background: var(--v3-blue); color: #fff;
    font: 700 17px/1.2 Inter, "Inter Fallback", system-ui, sans-serif; text-decoration: none; box-shadow: 0 8px 20px -10px rgba(37, 99, 235, .8); border: 0; transform: none; }
main.cv3 .v3-btn:hover, main.cv3 .cv2-btn.v3-btn:hover { background: var(--v3-blue-ink); color: #fff; }
main.cv3 .v3-btn:focus-visible, main.cv3 .v3-chip:focus-visible, main.cv3 .v3-pill:focus-visible, main.cv3 .v3-tab:focus-visible { outline: 3px solid rgba(37, 99, 235, .45); outline-offset: 3px; }
main.cv3 .v3-chip { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 14px; border: 1.5px solid var(--v3-edge); border-radius: 999px; background: #fff; color: var(--v3-ink);
    font: 600 15px/1.2 Inter, "Inter Fallback", system-ui, sans-serif; cursor: pointer; }
main.cv3 .v3-chip__tick { width: 16px; height: 16px; border-radius: 4px; border: 1.5px solid var(--v3-edge); box-sizing: border-box; flex: 0 0 16px; }
main.cv3 .v3-chip[aria-pressed="true"] { border: 2px solid var(--v3-navy); padding: 0 13.5px; }
main.cv3 .v3-chip[aria-pressed="true"] .v3-chip__tick { border: 0; background: var(--v3-amber) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.5l2.5 2.5L12 5.5' fill='none' stroke='%23172554' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat;
    animation: v3-stamp .17s ease-out; }
@keyframes v3-stamp { from { transform: scale(.6); } to { transform: scale(1); } }
main.cv3 .v3-pill { display: inline-flex; align-items: center; min-height: 44px; padding: 0 16px; border: 1.5px solid var(--v3-navy); border-radius: 999px; color: var(--v3-navy); background: #fff;
    font: 600 15px/1.2 Inter, "Inter Fallback", system-ui, sans-serif; text-decoration: none; white-space: nowrap; }
main.cv3 .v3-pill:hover { background: var(--v3-navy); color: #fff; }
main.cv3 .v3-pill__long { display: none; }
main.cv3 .v3-link { font-weight: 600; }
/* TASK-3980: 44 px trykflade */
main.cv3 .v3-host-sec .v3-link { display: inline-block; padding-block: 12px; margin-block: -12px; }

/* ---- hero ---- */
main.cv3 .v3-hero { background: var(--v3-paper); color: var(--v3-ink); }
main.cv3 .v3-hero__inner { display: grid; gap: 24px; padding-block: 12px 24px; }
main.cv3 .v3-hero .breadcrumbs { margin: 0 0 8px; }
main.cv3 .v3-hero .breadcrumbs, main.cv3 .v3-hero .breadcrumbs a, main.cv3 .v3-hero .breadcrumbs__current { color: var(--v3-muted); }
main.cv3 .v3-kicker { margin: 0 0 6px; font: 700 12px/1.3 Inter, "Inter Fallback", system-ui, sans-serif; letter-spacing: .14em; text-transform: uppercase; color: var(--v3-fest); }
main.cv3 .v3-hero__title { margin: 0 0 10px; font-family: var(--v3-display); font-weight: 700; font-size: clamp(31px, 6.4vw, 56px); line-height: 1.06; letter-spacing: -.01em; color: var(--v3-navy); text-wrap: balance; }
main.cv3 .v3-mark { background: linear-gradient(var(--v3-amber-soft), var(--v3-amber-soft)) 0 100% / 100% 38% no-repeat; animation: v3-mark .7s cubic-bezier(.2, .8, .2, 1) 1 both; }
@keyframes v3-mark { from { background-size: 0 38%; } to { background-size: 100% 38%; } }
main.cv3 .v3-hero__lead { margin: 0 0 12px; font-size: 17px; line-height: 1.55; color: var(--v3-ink); max-width: 40rem; }
main.cv3 .v3-host { display: flex; align-items: center; gap: 10px; margin: 0 0 14px; font: 600 14px/1.35 Inter, "Inter Fallback", system-ui, sans-serif; color: var(--v3-ink); }
main.cv3 .v3-host a { color: var(--v3-navy); }
main.cv3 .v3-host__photo, main.cv3 .v3-raad__photo, main.cv3 .v3-mbar__photo { border-radius: 50%; box-shadow: 0 0 0 3px var(--v3-amber); flex: none; object-fit: cover; }
main.cv3 .v3-hero__cta { margin: 0 0 8px; }
main.cv3 .v3-hero__privacy { margin: 0 0 14px; font-size: 14px; line-height: 1.5; color: var(--v3-muted); max-width: 40rem; }
main.cv3 .v3-chips { background: #fff; border-radius: 14px; box-shadow: var(--v3-shadow); padding: 12px 14px 14px; margin: 0 0 10px; max-width: 40rem; }
main.cv3 .v3-chips__label { display: flex; justify-content: space-between; gap: 8px; margin: 0 0 8px; font: 700 15px/1.3 Inter, "Inter Fallback", system-ui, sans-serif; color: var(--v3-navy); }
main.cv3 .v3-chips__label span { font-weight: 600; font-size: 13px; color: var(--v3-muted); }
main.cv3 .v3-chips__row { display: flex; flex-wrap: wrap; gap: 8px; }
main.cv3 .v3-hero__exp { margin: 0; font-size: 13px; color: var(--v3-muted); }
main.cv3 .v3-hero__exp a { color: var(--v3-muted); }
main.cv3 .v3-hero__media { display: none; margin: 0; }
/* spec § 5.1: v3.hero_cut 2-3 */
@media (max-width: 600px) { main.cv3 .v3-hero--cut2 .v3-kicker, main.cv3 .v3-hero--cut3 .v3-kicker { display: none; } }
/* TASK-3970 (R4): intet hero-billede til og med 899 px */
@media (min-width: 900px) {
    main.cv3 .v3-hero__inner { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 32px; align-items: center; padding-block: 8px 16px; }
    main.cv3 .v3-hero--noimg .v3-hero__inner { grid-template-columns: minmax(0, 7fr); }
    main.cv3 .v3-hero__media { display: block; }
    main.cv3 .v3-hero__media img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; max-height: 520px; object-fit: cover; border-radius: 22px; }
}

/* ---- svar (H-porten) ---- */
main.cv3 .cv2-answer.v3-svar { background: var(--v3-paper-2); padding-block: 24px; }
main.cv3 .v3-svar dl { display: block; max-width: 40rem; }
main.cv3 .v3-svar dt { font: 700 18px/1.3 Inter, "Inter Fallback", system-ui, sans-serif; color: var(--v3-navy); margin: 0 0 6px; }
main.cv3 .v3-svar dd { margin: 0; font-size: 16px; line-height: 1.55; color: var(--v3-ink); }
main.cv3 .v3-svar__more { margin: 8px 0 0; font-size: 14px; }
main.cv3 .v3-svar .container { padding-block: 0; }
@media (min-width: 900px) { main.cv3 .cv2-answer.v3-svar { padding-block: 20px; } }   /* TASK-3970 (UX R5): taettere foer formularen */

/* ---- hovedvalg ---- */
main.cv3 .v3-choices { padding-block: 16px 20px; }
main.cv3 .v3-choices h2 { margin-bottom: 8px; }
main.cv3 .v3-choices__list { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
main.cv3 .v3-choice { background: #fff; border: 1px solid var(--v3-line); border-radius: 14px; padding: 2px 12px 8px; }
main.cv3 .v3-choice__d > summary { display: flex; align-items: center; gap: 10px; min-height: 44px; cursor: pointer; list-style: none; padding: 4px 0; }
main.cv3 .v3-choice__d > summary::-webkit-details-marker { display: none; }
main.cv3 .v3-choice__d > summary::after { content: "+"; margin-left: auto; font: 600 20px/1 Inter, "Inter Fallback", system-ui, sans-serif; color: var(--v3-navy); }
main.cv3 .v3-choice__d[open] > summary::after { content: "\2212"; }
main.cv3 .v3-choice__q { margin: 0; font-size: 16px; line-height: 1.3; }
main.cv3 .v3-num { flex: 0 0 28px; width: 28px; height: 28px; border-radius: 50%; background: var(--v3-amber); color: var(--v3-navy); font: 700 14px/28px Inter, "Inter Fallback", system-ui, sans-serif; text-align: center; }
main.cv3 .v3-choice__body p { margin: 4px 0 6px; font-size: 15px; line-height: 1.5; }
main.cv3 .v3-choice__chips { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 4px; }
main.cv3 .v3-choice__chips .v3-chip { min-height: 44px; font-size: 14px; padding: 0 10px; gap: 6px; }
main.cv3 .v3-choice__chips .v3-chip[aria-pressed="true"] { padding: 0 9.5px; }
main.cv3 .v3-check { margin-top: 8px; }
main.cv3 .v3-check__d { background: var(--v3-paper-2); border-radius: 14px; padding: 4px 14px; }
main.cv3 .v3-check__d > summary { min-height: 44px; display: flex; align-items: center; cursor: pointer; font: 700 15px/1.3 Inter, "Inter Fallback", system-ui, sans-serif; color: var(--v3-navy); }
main.cv3 .v3-check__list { list-style: none; margin: 0 0 10px; padding: 0; }
main.cv3 .v3-check__list li { position: relative; padding: 4px 0 4px 26px; font-size: 15px; line-height: 1.5; }
main.cv3 .v3-check__list li::before { content: ""; position: absolute; left: 2px; top: 9px; width: 14px; height: 8px; border-left: 2.5px solid var(--v3-sage); border-bottom: 2.5px solid var(--v3-sage); transform: rotate(-45deg); }
/* TASK-3970 (R5): fra 900 px tre åbne valg, tjeklisten lukket under dem */
@media (min-width: 900px) {
    main.cv3 .v3-choices__list { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; align-items: start; }
    main.cv3 .v3-choice { padding: 6px 16px 12px; }
    main.cv3 .v3-choice__body p { font-size: 14px; line-height: 1.45; }
    main.cv3 .v3-check { margin-top: 16px; }
    main.cv3 .cv2-sec.v3-choices { padding-block: 32px 24px; }   /* ikke .cv2-sec's 72: modulerne foer formularen staar taettere (spec § 3.3) */
}

/* ---- typer (1 kolonne med 120 x 90 paa telefon, spec § 4.5) ---- */
main.cv3 #hvad-kan-du-leje { padding-block: 20px; }
main.cv3 .cv2-what.v3-types { display: grid; grid-template-columns: 1fr; gap: 8px; margin: 0; }
main.cv3 .v3-types .cv2-what__card { display: flow-root; background: #fff; border: 1px solid var(--v3-line); border-radius: 14px; padding: 10px 12px; }
main.cv3 .v3-types .cv2-what__media { float: right; width: 120px; height: 90px; aspect-ratio: auto; margin: 0 0 4px 12px; border-radius: 10px; }
main.cv3 .v3-types h3 { margin: 0; font-size: 17px; line-height: 1.35; }
main.cv3 .v3-t--l { display: none; }
main.cv3 .v3-types .cv2-what__title { color: var(--v3-ink); }
main.cv3 .v3-types .cv2-what__meta { margin: 0 0 6px; font-size: 14px; }
main.cv3 .v3-types .cv2-what__count { display: inline-flex; align-items: center; min-height: 44px; color: var(--v3-blue-ink); }
main.cv3 .v3-types .cv2-what__ex { display: none; }
main.cv3 .v3-card__cta { margin: 0; }
/* TASK-3970 (R8): titellinket 44 px uden at kortet vokser */
/* TASK-3980 (N2): inline-block, så '›' står efter sidste ord */
main.cv3 .v3-types h3 a.cv2-what__title { display: inline-block; padding-block: 11px; margin-block: -11px; }
main.cv3 .v3-types a.cv2-what__title:not([data-lc-vare])::after { content: "\00a0\203A"; }
main.cv3 .v3-types span.cv2-what__title::after { content: none; }
@media (min-width: 601px) {
    main.cv3 .cv2-what.v3-types { grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 16px; }
    /* TASK-3970 (R3): knappen i bunden; kortet er en container */
    main.cv3 .v3-types .cv2-what__card { padding: 0 0 14px; overflow: hidden; display: flex; flex-direction: column; container-type: inline-size; }
    /* TASK-3980 (N2): kort uden billede */
    main.cv3 .v3-types .cv2-what__card > .v3-card:first-child { padding-top: 16px; }
    main.cv3 .v3-types .cv2-what__media { float: none; width: auto; height: auto; aspect-ratio: 4 / 3; margin: 0 0 12px; border-radius: 13px 13px 0 0; }
    main.cv3 .v3-card { padding: 0 16px; flex: 1 1 auto; display: flex; flex-direction: column; }
    main.cv3 .v3-card__cta { margin-top: auto; }
    main.cv3 .v3-types .cv2-what__ex { display: block; font-size: 14px; margin: 0 0 10px; color: var(--v3-muted); }
    main.cv3 .v3-pill__long { display: inline; }
    main.cv3 .v3-t--l { display: inline; }
    main.cv3 .v3-t--s { display: none; }
    main.cv3 .v3-pill__short { display: none; }
    main.cv3 .v3-pw-short .v3-pill__long { display: none; }
    main.cv3 .v3-pw-short .v3-pill__short { display: inline; }
}
/* TASK-3970 (R5): lavere kort fra 900 px */
@media (min-width: 900px) {
    main.cv3 .v3-types .cv2-what__media { aspect-ratio: 16 / 10; }
    main.cv3 .v3-types .cv2-what__ex { font-size: 13px; line-height: 1.45; }
}
/* TASK-3970 (R3): smalt kort = kort knaptekst (pill_threshold) */
@container (max-width:259.98px){.cv3 .v3-pw260 .v3-pill__long{display:none}.cv3 .v3-pw260 .v3-pill__short{display:inline}}
@container (max-width:279.98px){.cv3 .v3-pw280 .v3-pill__long{display:none}.cv3 .v3-pw280 .v3-pill__short{display:inline}}
@container (max-width:299.98px){.cv3 .v3-pw300 .v3-pill__long{display:none}.cv3 .v3-pw300 .v3-pill__short{display:inline}}
@container (max-width:319.98px){.cv3 .v3-pw320 .v3-pill__long{display:none}.cv3 .v3-pw320 .v3-pill__short{display:inline}}
@container (max-width:339.98px){.cv3 .v3-pw340 .v3-pill__long{display:none}.cv3 .v3-pw340 .v3-pill__short{display:inline}}
@container (max-width:359.98px){.cv3 .v3-pw360 .v3-pill__long{display:none}.cv3 .v3-pw360 .v3-pill__short{display:inline}}
@container (max-width:379.98px){.cv3 .v3-pw380 .v3-pill__long{display:none}.cv3 .v3-pw380 .v3-pill__short{display:inline}}
@container (max-width:399.98px){.cv3 .v3-pw400 .v3-pill__long{display:none}.cv3 .v3-pw400 .v3-pill__short{display:inline}}
@container (max-width:419.98px){.cv3 .v3-pw420 .v3-pill__long{display:none}.cv3 .v3-pw420 .v3-pill__short{display:inline}}
@container (max-width:439.98px){.cv3 .v3-pw440 .v3-pill__long{display:none}.cv3 .v3-pw440 .v3-pill__short{display:inline}}

/* ---- formular: feltet foerst, kortet hvidt, Philips raad under Videre ---- */
main.cv3 .agent-cta--full { background: var(--v3-paper-2); color: var(--v3-ink); padding: 24px 0 40px; margin: 0; }
main.cv3 .v3-form { display: grid; gap: 12px; grid-template-areas: "head" "card" "steps"; }
main.cv3 .v3-form__head { grid-area: head; }
main.cv3 .v3-form__title { margin: 0 0 6px; }
main.cv3 .v3-form__head .v3-host { margin: 0; }
/* TASK-3980 (N1): feltet 12 px under den faste header */
main.cv3 .v3-form__card.agent-hero-card { grid-area: card; background: #fff; border-radius: 14px; box-shadow: var(--v3-shadow); padding: 16px; margin: 0; max-width: none; border: 0; scroll-margin-top: calc(var(--header-h, 68px) + 13px); }
main.cv3 .v3-form__card .agent-hero-card__step[data-step-index="0"] > .agent-hero-card__step-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
main.cv3 .v3-form__card .agent-hero-card__progress { display: none; }
main.cv3 .v3-form__card .agent-hero-card__input, main.cv3 .v3-form__card .agent-hero-card__textarea { border: 1.5px solid var(--v3-edge); border-radius: 8px; font-size: 16px; }
main.cv3 .v3-form__card .agent-hero-card__input:focus, main.cv3 .v3-form__card .agent-hero-card__textarea:focus { outline: 3px solid rgba(37, 99, 235, .35); outline-offset: 0; border-color: var(--v3-blue); }
main.cv3 .v3-form__card .agent-hero-card__button--primary { background: var(--v3-blue); border-color: var(--v3-blue); color: #fff; border-radius: 999px; min-height: 48px; font-weight: 700; }
main.cv3 .v3-examples { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin: 8px 0 4px; }
main.cv3 .v3-examples__label { font-size: 13px; color: var(--v3-muted); }
main.cv3 .v3-example { min-height: 44px; padding: 0 12px; border: 1px solid var(--v3-line); border-radius: 999px; background: var(--v3-paper); color: var(--v3-ink); font: 500 14px/1.2 Inter, "Inter Fallback", system-ui, sans-serif; cursor: pointer; }
main.cv3 .v3-example:hover { border-color: var(--v3-navy); }
main.cv3 .v3-form__steps { grid-area: steps; list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; counter-reset: v3s; font-size: 14px; color: var(--v3-muted); }
main.cv3 .v3-form__steps li { counter-increment: v3s; display: flex; gap: 8px; align-items: baseline; }
main.cv3 .v3-form__steps li::before { content: counter(v3s); flex: 0 0 20px; height: 20px; border-radius: 50%; background: var(--v3-amber); color: var(--v3-navy); font: 700 12px/20px Inter, "Inter Fallback", system-ui, sans-serif; text-align: center; }
main.cv3 .v3-raad { margin: 16px -16px -16px; padding: 14px 16px 16px; border-top: 1px solid var(--v3-line); }
main.cv3 .v3-raad__label { display: flex; align-items: center; gap: 10px; margin: 0 0 6px; font: 700 16px/1.2 var(--v3-display); color: var(--v3-fest); }
main.cv3 .v3-raad__text { margin: 0 0 6px; font: 600 16px/1.5 Inter, "Inter Fallback", system-ui, sans-serif; color: var(--v3-ink); }
main.cv3 .v3-raad__src, main.cv3 .v3-raad__foot { margin: 0 0 6px; font-size: 14px; color: var(--v3-muted); }
main.cv3 .v3-raad__apply { margin: 0 0 6px; font-size: 15px; line-height: 1.5; }
@media (min-width: 900px) {
    main.cv3 .agent-cta--full { padding-block: 28px 72px; }   /* TASK-3970 (UX R5): 48 px fra typekortene til formularen (typer har 20 px i bunden) */
    /* TASK-3970 (UX R5): auto 1fr */
    main.cv3 .v3-form { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); grid-template-rows: auto 1fr; grid-template-areas: "head card" "steps card"; gap: 16px 32px; align-items: start; }
}

/* ---- tal ---- */
main.cv3 .v3-tal__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
main.cv3 .v3-tal__list a { display: block; min-height: 44px; border-top: 1px solid var(--v3-navy); padding-top: 8px; text-decoration: none; color: var(--v3-ink); }
main.cv3 .v3-tal__n { display: block; font: 700 34px/1.1 var(--v3-display); font-variant-numeric: lining-nums tabular-nums; color: var(--v3-navy); }
main.cv3 .v3-tal__l { display: block; font-size: 14px; line-height: 1.45; color: var(--v3-muted); }
@media (min-width: 900px) {
    main.cv3 .v3-tal__list { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 32px; }
    main.cv3 .v3-tal__n { font-size: 46px; }
    main.cv3 .v3-tal__list--host { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* ---- priser med faner ---- */
main.cv3 .v3-prices { padding-block: 16px 12px; }
main.cv3 .v3-tabs { display: flex; gap: 6px; overflow-x: auto; padding-block: 8px; }
main.cv3 .v3-tabs[hidden] { display: none; }
main.cv3 .v3-tab { flex: none; min-height: 44px; padding: 0 16px; border: 1.5px solid var(--v3-edge); border-radius: 999px; background: #fff; color: var(--v3-ink); font: 600 15px/1.2 Inter, "Inter Fallback", system-ui, sans-serif; cursor: pointer; }
main.cv3 .v3-tab[aria-selected="true"] { border: 2px solid var(--v3-navy); background: var(--v3-navy); color: #fff; }
main.cv3 .v3-winter { display: inline-block; margin-left: 4px; padding: 1px 8px; border-radius: 999px; background: var(--v3-paper-3); color: var(--v3-ink); font-size: 14px; font-weight: 600; }
main.cv3 .v3-prices .cv2-sec { padding-block: 16px; }
main.cv3 .v3-prices .v3-pfoot { padding-block: 0; }
main.cv3 .v3-svar__more--p { margin-top: 0; font-size: 13px; line-height: 16px; }
main.cv3 .v3-mod--links summary { padding-block: 11px; }
main.cv3 .v3-pfoot .lc-footnote { margin: 0; line-height: 1.4; }
main.cv3 .v3-pfoot .lc-vat-note { margin-top: 6px; line-height: 1.4; }

/* ---- listen ---- */
main.cv3 #udlejere { padding-block: 40px; }
main.cv3 .v3-listbox { background: var(--v3-paper-2); border-radius: 14px; padding: 16px; margin: 8px 0 16px; max-width: 48rem; }
main.cv3 .v3-listbox__title { margin: 0 0 4px; font-family: var(--v3-display); font-weight: 700; font-size: 22px; color: var(--v3-navy); }
main.cv3 .v3-listbox p { margin: 0 0 10px; }
main.cv3 .v3-listbox__how { margin: 6px 0 2px !important; font-size: 14px; }
main.cv3 .v3-listbox__lines { margin: 0; padding-left: 18px; font-size: 14px; color: var(--v3-muted); }
main.cv3 .cv2-vendors__ask { border-color: var(--v3-navy); color: var(--v3-navy); border-radius: 999px; }
main.cv3 .cv2-filter__chip { min-height: 44px; }   /* TASK-3970 (UX R8): trykflader >= 44 px (cv2 har 40, paa telefon 36) */
main.cv3 .cv2-vendors li { border-color: var(--v3-line); }

/* ---- vaert ---- */
main.cv3 .v3-host-sec { background: #fff; }
main.cv3 .v3-host-sec__grid { display: grid; gap: 24px; }
main.cv3 .v3-host-sec__a { display: block; font-weight: 400; font-size: 16px; }
main.cv3 .v3-host-sec__a p { margin: 0 0 10px; max-width: 40rem; }
main.cv3 .v3-portrait { margin: 0 0 12px; }
main.cv3 .v3-portrait__img { width: 160px; height: 160px; border-radius: 22px; object-fit: cover; box-shadow: 0 0 0 3px var(--v3-amber); }
main.cv3 .v3-portrait figcaption { margin-top: 8px; font-size: 13px; color: var(--v3-muted); }
main.cv3 .v3-tl { list-style: none; margin: 0 0 12px; padding: 0; display: grid; gap: 8px; }
main.cv3 .v3-tl li { display: flex; gap: 12px; font-size: 15px; }
main.cv3 .v3-tl__y { flex: 0 0 44px; font: 700 16px/1.4 var(--v3-display); color: var(--v3-fest); }
main.cv3 .v3-host-sec__sold { font-size: 14px; color: var(--v3-muted); margin: 0 0 16px; }
main.cv3 .v3-cases { list-style: none; margin: 16px 0 0; padding: 0; display: grid; gap: 12px; }
main.cv3 .v3-case { border: 1px solid var(--v3-line); border-radius: 14px; padding: 12px 14px; }
main.cv3 .v3-case__label { margin: 0 0 4px; font: 700 12px/1.3 Inter, "Inter Fallback", system-ui, sans-serif; letter-spacing: .08em; text-transform: uppercase; color: var(--v3-fest); }
main.cv3 .v3-case__title { margin: 0 0 4px; font-weight: 700; }
main.cv3 .v3-case p:last-child { margin: 0; font-size: 15px; }
main.cv3 .v3-cases__all { margin: 16px 0 0; }
@media (max-width: 600px) { main.cv3 .v3-host-sec--cut2 .v3-tl { display: none; } }   /* TASK-3970: v3.main_cut 2 (spec § 5.3, efter formularen) */
@media (min-width: 900px) { main.cv3 .v3-host-sec__grid { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 32px; } main.cv3 .v3-host-sec { padding-block: 72px; } }

/* ---- faq og links ---- */
main.cv3 .v3-faq__item { border-bottom: 1px solid var(--v3-line); max-width: 48rem; }
main.cv3 .v3-faq__item > summary { min-height: 44px; display: flex; align-items: center; cursor: pointer; padding: 8px 0; font: 700 16px/1.35 Inter, "Inter Fallback", system-ui, sans-serif; color: var(--v3-navy); }
main.cv3 .v3-faq__item p { margin: 0 0 12px; line-height: 1.6; }
main.cv3 .cv2-links a { border-color: var(--v3-line); }
/* TASK-4020: v3.fold_links */
main.cv3 .v3-fold > summary h2, main.cv3 .v3-fold .container { margin: 0; padding: 0; }
main.cv3 .lc-folded-section { padding-top: 24px; }
@media (max-width: 899px) { main.cv3 .cv2-sec:has(> .container > .v3-fold) { padding-block: 8px; } main.cv3 .v3-fold > summary h2 { font-size: 20px; } }

/* ---- mobilbar med Philip (spec § 4.15) ---- */
body.cv3 .afk-mobilebar.v3-mbar { gap: 8px; padding: 0 8px 0 12px; justify-content: space-between; background: var(--v3-navy); box-shadow: 0 12px 28px -10px rgba(14, 24, 56, .7); }
body.cv3 .v3-mbar .v3-mbar__who { flex: 1; min-width: 0; font: 600 13px/1.2 Inter, "Inter Fallback", system-ui, sans-serif; color: #fff; text-align: left; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
body.cv3 .v3-mbar .afk-mobilebar__label { flex: none; display: inline-flex; align-items: center; min-height: 40px; padding: 0 14px; border-radius: 999px; background: var(--v3-blue); color: #fff; font: 700 15px/1.2 Inter, "Inter Fallback", system-ui, sans-serif; }

@media (min-width: 900px) { main.cv3 .container { padding-inline: 32px; } main.cv3 .cv2-sec { padding-block: 72px; } }
@media (prefers-reduced-motion: reduce) { main.cv3 .v3-mark, main.cv3 .v3-chip[aria-pressed="true"] .v3-chip__tick { animation: none; } }
body.cv3 .v3-mbar__photo { border-radius: 50%; box-shadow: 0 0 0 3px var(--v3-amber); flex: none; object-fit: cover; }
