/*
Theme Name: Rikke la Cour
Theme URI: https://rikkelacour.com/
Author: Kalle la Cour
Description: Letvægts block-tema til Rikke la Cour Negotiation Consulting. Alt indhold redigeres i WordPress' egen editor – ingen sidebygger nødvendig.
Version: 1.6.0
Requires at least: 6.6
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: rikke-la-cour
*/

/* ---------- Grundlæggende ---------- */
html { scroll-behavior: smooth; scroll-padding-top: 90px; }
body { -webkit-font-smoothing: antialiased; }
.wp-site-blocks { min-height: 100vh; display: flex; flex-direction: column; }
.wp-site-blocks > main, .wp-site-blocks > .rlc-main { flex: 1 0 auto; }
img { height: auto; }
:where(h1, h2, h3) { text-wrap: balance; }

/* Ingen luft mellem fuldbredde-sektioner på forsiden */
.wp-block-post-content > .alignfull { margin-block: 0 !important; }
.rlc-main, footer.wp-block-template-part, header.wp-block-template-part { margin-block: 0 !important; }
footer.wp-block-template-part a { text-decoration: none; }
footer.wp-block-template-part a:hover { text-decoration: underline; }

/* ---------- Header ---------- */
header.wp-block-template-part { position: sticky; top: var(--wp-admin--admin-bar--height, 0px); z-index: 100; }
@media (max-width: 600px) { header.wp-block-template-part { top: 0; } }
.rlc-header { z-index: 100; border-bottom: 1px solid rgba(255,255,255,.08); backdrop-filter: blur(14px); }
.rlc-header.has-background { background-color: #092532 !important; }
.rlc-header { box-shadow: 0 6px 24px rgba(6,27,38,.18); }
.rlc-brand { gap: .8rem !important; }
.rlc-brand .wp-block-image { margin: 0; }
.rlc-brand .wp-block-image img { width: 58px; height: auto; display: block; }
.rlc-brand-name { font-family: var(--wp--preset--font-family--serif); font-size: 1.1rem !important; letter-spacing: .09em; line-height: 1 !important; margin: 0 !important; white-space: nowrap; }
.rlc-brand-name a { color: inherit !important; text-decoration: none; }
.rlc-brand-sub { font-size: .56rem !important; letter-spacing: .22em; text-transform: uppercase; line-height: 1 !important; margin: .3rem 0 0 !important; opacity: .65; white-space: nowrap; }
.rlc-header .wp-block-navigation a { text-decoration: none; opacity: .8; transition: opacity .2s; }
.rlc-header .wp-block-navigation a:hover { opacity: 1; }
.rlc-header .wp-block-navigation .rlc-nav-cta > a { opacity: 1; padding: .7rem 1.1rem; border: 1px solid var(--wp--preset--color--teal-soft); border-radius: 999px; }
.rlc-header .wp-block-navigation .rlc-nav-cta > a:hover { background: var(--wp--preset--color--teal); border-color: var(--wp--preset--color--teal); }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { font-size: 1.1rem; gap: 1.2rem; }
.wp-block-navigation__responsive-container.is-menu-open .rlc-nav-cta > a { border: 0 !important; padding: 0 !important; color: var(--wp--preset--color--mint) !important; }
@media (max-width: 600px) {
	.rlc-brand .wp-block-image img { width: 44px; }
	.rlc-brand-name { font-size: .95rem !important; }
	.rlc-brand-sub { font-size: .5rem !important; letter-spacing: .16em; }
}

/* ---------- Hero ---------- */
.rlc-hero { overflow: hidden; }
.rlc-hero h1 { color: #fff; }
.rlc-hero .wp-block-cover__inner-container { width: 100% !important; }
@media (max-width: 781px) {
	.rlc-hero { align-items: flex-end !important; min-height: 640px !important; }
	.rlc-hero .wp-block-cover__background { background: linear-gradient(180deg, rgba(6,27,38,.05) 0%, rgba(6,27,38,.25) 35%, rgba(6,27,38,.85) 62%, rgba(6,27,38,.98) 100%) !important; opacity: 1 !important; }
	.rlc-hero .wp-block-cover__image-background { object-position: 72% 20% !important; }
}

/* ---------- Bro-illustration ---------- */
.rlc-bridge .wp-block-image { margin: 0; }
.rlc-bridge .wp-block-image img { width: 100%; display: block; }
@media (max-width: 781px) { .rlc-bridge .wp-block-image img { height: 190px; object-fit: cover; object-position: 22% center; } }

/* ---------- Blokstile (kan vælges i editoren under "Stilarter") ---------- */

/* Afsnit: Overlinje (lille versal-tekst over overskrifter) */
.is-style-rlc-kicker { color: var(--wp--preset--color--teal); font-size: .7rem !important; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; line-height: 1.4 !important; margin-bottom: .9rem !important; }

/* Afsnit: Nummer i cirkel */
.is-style-rlc-number { width: 44px; height: 44px; display: grid; place-items: center; border: 1px solid #a4c6c0; border-radius: 50%; color: var(--wp--preset--color--teal); font-family: var(--wp--preset--font-family--serif); font-size: 1rem !important; line-height: 1 !important; }

/* Gruppe: Kort */
.is-style-rlc-card { background: #fff; border: 1px solid #e1e6e1; border-radius: var(--wp--custom--radius--card); padding: clamp(1.4rem, 3vw, 1.9rem); position: relative; overflow: hidden; transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.is-style-rlc-card::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 4px; background: var(--wp--preset--color--teal); transform: scaleX(0); transform-origin: left; transition: transform .25s ease; }
.is-style-rlc-card:hover, .is-style-rlc-card:focus-within { transform: translateY(-5px); border-color: #a6c5c0; box-shadow: 0 20px 48px rgba(16,47,64,.10); }
.is-style-rlc-card:hover::after, .is-style-rlc-card:focus-within::after { transform: scaleX(1); }

/* Gruppe: Tal-boks (mørk baggrund) */
.is-style-rlc-stat { border: 1px solid rgba(255,255,255,.15); border-radius: 24px; background: rgba(255,255,255,.04); padding: clamp(1.3rem, 3vw, 1.8rem); }
.is-style-rlc-stat > p:first-child { font-family: var(--wp--preset--font-family--serif); font-size: clamp(2.6rem, 5vw, 3.2rem) !important; line-height: 1 !important; margin: 0 0 .6rem !important; color: #fff; }
.is-style-rlc-stat > p:last-child { color: var(--wp--preset--color--mint); font-size: .68rem !important; letter-spacing: .14em; text-transform: uppercase; margin: 0 !important; line-height: 1.4 !important; }

/* Gruppe: Linje ovenover */
.is-style-rlc-topline { border-top: 1px solid var(--wp--preset--color--line); padding-top: 1.6rem; }

/* Billede: Afrundet med ramme */
.is-style-rlc-framed { padding: clamp(10px, 1.6vw, 18px); background: linear-gradient(145deg, #eef3f1, #f9f6ee); border: 1px solid rgba(16,47,64,.07); border-radius: 34px; box-shadow: 0 18px 45px rgba(16,47,64,.08); }
.is-style-rlc-framed img { border-radius: 24px; display: block; width: 100%; aspect-ratio: 4 / 3.4; object-fit: cover; }
.is-style-rlc-framed figcaption { margin: .9rem .4rem .2rem; font-size: .66rem; letter-spacing: .16em; text-transform: uppercase; color: var(--wp--preset--color--navy); text-align: left; }

/* Citat: Udtalelse */
.is-style-rlc-testimonial { margin: 0; }
.is-style-rlc-testimonial p { font-family: var(--wp--preset--font-family--serif); font-size: clamp(1.25rem, 2.2vw, 1.45rem); line-height: 1.4; color: var(--wp--preset--color--navy); }
.is-style-rlc-testimonial cite { display: block; margin-top: 1rem; font-style: normal; font-size: .85rem; color: var(--wp--preset--color--muted); }
.rlc-stars { color: var(--wp--preset--color--gold); letter-spacing: .14em; margin: 0 !important; }

/* Details ("Explore service") */
.rlc-card-details { margin-top: auto !important; }
.rlc-card-details summary { cursor: pointer; list-style: none; color: var(--wp--preset--color--teal); font-size: .68rem; font-weight: 600; letter-spacing: .15em; text-transform: uppercase; display: flex; align-items: center; gap: .6rem; }
.rlc-card-details summary::-webkit-details-marker { display: none; }
.rlc-card-details summary::after { content: "+"; font-size: 1.1rem; line-height: 1; transition: transform .25s; }
.rlc-card-details[open] summary::after { transform: rotate(45deg); }
.rlc-card-details p { color: var(--wp--preset--color--muted); margin-top: .8rem; }

/* Knapper på mørk baggrund */
.is-style-outline > .wp-block-button__link { background: transparent; }
.rlc-on-dark .is-style-outline > .wp-block-button__link { color: #fff; border-color: rgba(255,255,255,.4); }
.rlc-on-dark .is-style-outline > .wp-block-button__link:hover { background: rgba(255,255,255,.08); border-color: #fff; }
.wp-block-button__link { transition: transform .2s, background-color .2s, border-color .2s; }
.wp-block-button__link:hover { transform: translateY(-2px); }

/* ---------- Diskret "fade-in" ved scroll ---------- */
@media (prefers-reduced-motion: no-preference) {
	.rlc-js .rlc-reveal { opacity: 0; transform: translateY(22px); transition: opacity .7s ease, transform .7s ease; }
	.rlc-js .rlc-reveal.is-visible { opacity: 1; transform: none; }
}

/* ---------- Cirkelbro som procesbar ---------- */
.rlc-bridge-svg { display: block; width: 100%; height: clamp(170px, 23.6vw, 360px); }
.rlc-header { position: relative; }
.rlc-header-bridge { margin: 0 !important; max-width: none !important; position: absolute; left: 50%; top: 50%; width: 190px; height: 42px; transform: translate(-50%, -30%); opacity: 0; visibility: hidden; transition: opacity .28s ease, transform .28s ease, visibility .28s; pointer-events: none; }
.rlc-header-bridge.is-visible { opacity: 1; visibility: visible; transform: translate(-50%, -50%); }
.rlc-header-bridge svg { width: 100%; height: 100%; display: block; overflow: visible; }
.hp-platform { fill: none; stroke: rgba(245,241,232,.6); stroke-width: 2; }
.hp-mast { stroke: #f5f1e8; stroke-width: 3.3; stroke-linecap: round; }
.hp-cable { stroke: rgba(114,170,164,.68); stroke-width: 1; }
.hp-base { fill: none; stroke: rgba(255,255,255,.16); stroke-width: 5; stroke-linecap: round; }
.hp-progress { fill: none; stroke: #72aaa4; stroke-width: 5; stroke-linecap: round; }
.hp-dot { fill: #092532; stroke: #f5f1e8; stroke-width: 2.5; }
@media (max-width: 980px) { .rlc-header-bridge { display: none; } }
