/* Visual system from the current JacobRytter.dk hub. */
:root{--navy:#0c1c2e;--navy2:#142a43;--blue:#388de0;--cyan:#91c8f5;--text:#f4f8fc;--muted:#aec0d2;--line:#29435d}
html{color-scheme:dark;scroll-padding-top:100px}body{background:var(--navy);color:var(--text);overflow-x:hidden;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}h1,h2,h3{text-wrap:balance}p{color:var(--muted);text-wrap:pretty}header{background:#0c1c2ef5;border-color:var(--line)}header>nav{min-height:86px;padding:16px 24px}.brand{font-size:18px;letter-spacing:.035em;display:flex;align-items:center;gap:12px}.brand:before{content:'RA';width:48px;height:48px;display:grid;place-items:center;border:1px solid #51708d;border-radius:50%;font-size:17px;letter-spacing:-1px;color:white;background:#142a43}.brand span{color:var(--cyan)}.links{gap:18px;font-size:14px}.links a:hover{color:var(--cyan)}.flags a{background:#1e3751;border:1px solid #51708d;width:40px;height:40px}.flags [aria-current]{border:3px solid var(--cyan);background:#294e71}.flags img{width:25px;height:19px;object-fit:cover}.menu{border-radius:10px;border-color:#51708d}.wrap{max-width:1180px;padding:67px 24px 85px}.hero{max-width:none;grid-template-columns:minmax(0,1fr) minmax(0,.72fr);gap:35px;padding:56px max(24px,calc((100vw - 1132px)/2)) 60px;background:radial-gradient(circle at 79% 24%,#21466b 0%,#10243a 43%,#0c1c2e 88%);border-bottom:1px solid var(--line)}h1{font-size:clamp(52px,6vw,82px);font-weight:400;line-height:1.04;letter-spacing:-.055em;margin:18px 0 24px}h1 span{color:var(--cyan)}.eyebrow{color:var(--cyan);font-size:13px;letter-spacing:.16em}.lead{font-size:clamp(17px,1.8vw,21px);line-height:1.6;color:#bdcddd;max-width:650px}.hero-img{height:470px;border-radius:22px;clip-path:inset(1.2% round 22px)}.actions{gap:12px;margin-top:27px}.btn{min-height:54px;display:inline-flex;align-items:center;justify-content:center;padding:13px 20px;border-radius:10px;background:var(--blue);border-color:var(--blue);color:white;font-size:15px;font-weight:700}.btn:hover{filter:brightness(1.12)}.secondary{background:transparent;border-color:#51708d}.band{background:var(--navy);border-color:var(--line)}h2{font-size:clamp(32px,4vw,52px);line-height:1.1;letter-spacing:-.045em;font-weight:700}.grid{gap:15px}.card{background:#192e46;border:1px solid #35516d;border-radius:18px;padding:24px;transition:transform .2s,border-color .2s}.card:hover{border-color:var(--cyan)}.card h3{font-size:22px;line-height:1.2}.card p{color:#bdcddd;font-size:15px;line-height:1.6}.card a,.num,.steps b{color:#a6d5fa}.service-img{width:calc(100% + 48px);margin:-24px -24px 20px;aspect-ratio:1.55;object-fit:cover;clip-path:inset(1.2%)}.modules .card{padding:24px}.modules h3{font-size:20px}.topics li{border-color:var(--line);color:#bdcddd}.book{background:#192e46;border-radius:18px;border-color:var(--cyan);padding:30px}.partner strong{color:var(--text)}.site-footer{background:#020a13;border-top:1px solid var(--line);padding:48px 24px 26px}.footer-inner{max-width:1132px}.footer-brand{gap:13px}.footer-mark{width:46px;height:46px;font-size:17px;border-color:#51708d}.footer-brand h3{font-size:22px;letter-spacing:-.03em}.footer-brand strong{color:var(--cyan)}.footer-brand p{color:#94adbf;font-size:14px;max-width:420px}.footer-grid h4{font-size:13px;letter-spacing:.08em}.footer-links,.footer-contact p{font-size:14px;color:#94adbf}.footer-details,.footer-bottom,.footer-contact{border-color:rgba(105,213,255,.12)}.footer-bottom{font-size:14px;color:#7896aa}.top-button{border-color:#51708d}.footer-links a:hover{color:var(--cyan)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}
@media(max-width:960px){.links{gap:12px}.brand{gap:7px}.hero{grid-template-columns:1fr 1fr}h1{font-size:clamp(44px,6vw,62px)}}
@media(max-width:900px){header>nav{min-height:76px}.links{top:76px;background:var(--navy2);border-bottom:1px solid var(--line)}.hero{grid-template-columns:1fr;padding:66px 24px 0;gap:18px}.hero-img{height:340px;width:100%;border-radius:22px 22px 0 0;clip-path:inset(1.2% round 22px 22px 0 0)}.wrap{padding:48px 24px 65px}.hero{padding-top:66px;padding-bottom:0}.grid{grid-template-columns:1fr}.split{gap:28px}.lead{font-size:17px}.service-img{aspect-ratio:1.9}}
@media(max-width:650px){header>nav{padding:12px 16px;gap:8px}.brand{font-size:14px;letter-spacing:0;gap:6px}.brand:before{width:36px;height:36px;font-size:14px}.flags{gap:5px}.flags a{width:35px;height:35px}.flags img{width:23px;height:17px}.menu{font-size:13px;padding:7px 9px}.hero{padding-inline:16px}.wrap{padding-inline:16px}h1{font-size:clamp(44px,10vw,68px);line-height:1.07}.lead{font-size:16px;line-height:1.55}.btn{min-height:49px;font-size:14px;padding:12px 14px}.card{padding:21px}.service-img{width:calc(100% + 42px);margin:-21px -21px 20px}.site-footer{padding:34px 16px 24px}.footer-brand{gap:13px}.footer-brand h3{font-size:22px}.footer-mark{width:46px;height:46px}.footer-grid{gap:26px}.footer-bottom{font-size:14px;line-height:1.7}.modules{gap:12px}.modules .card{padding:18px}}
@media(max-width:380px){.brand:before{display:none}.brand{font-size:14px}.flags a{width:30px;height:30px}.flags{gap:3px}.flags img{width:20px;height:15px}.modules{grid-template-columns:1fr}.actions{flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card{transition:none}}

/* FAQ and four-column footer matched to supplied JacobRytter.dk reference. */
.faq-section{background:linear-gradient(135deg,#061827,#04121e);border-block:1px solid #29435d}.faq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;padding-block:100px}.faq-copy h2{font-size:clamp(42px,5vw,74px);font-weight:800;letter-spacing:-.055em;line-height:1.06;margin:32px 0}.faq-copy h2 span{color:#91c8f5}.faq-copy p{font-size:18px;line-height:1.75}.faq-filters{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:22px}.faq-filters button{font:inherit;color:#bdcddd;background:transparent;border:1px solid #29546d;border-radius:999px;padding:12px 18px;cursor:pointer}.faq-filters button[aria-pressed=true]{background:#91c8f5;color:#061827;border-color:#91c8f5}.faq-list{display:grid;gap:12px}.faq-list details{border:1px solid #29546d;border-radius:22px;overflow:hidden;background:#061827}.faq-list details[hidden]{display:none}.faq-list summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;font-size:19px;font-weight:800;line-height:1.4}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{width:38px;height:38px;flex:none;border:1px solid #29546d;border-radius:50%;display:grid;place-items:center;font-size:25px;color:#91c8f5}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{margin:0;padding:0 24px 24px;line-height:1.75}.footer-inner{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:36px}.footer-grid{display:contents}.footer-brand{margin:0}.footer-brand h3{font-size:20px}.footer-brand p{max-width:270px}.footer-details,.footer-bottom{grid-column:1/-1;margin:0}.footer-links{gap:12px}.footer-links a{line-height:1.5}.footer-contact{min-width:0}.site-footer{padding-block:60px 26px}.footer-bottom{padding-top:22px}.footer-inner nav{padding:0;margin:0}.footer-contact .footer-mail{font-size:15px}.footer-contact p{font-size:15px}
@media(max-width:900px){.faq-layout{grid-template-columns:1fr;gap:28px;padding-block:65px}.faq-copy h2{max-width:650px}.footer-inner{grid-template-columns:1.25fr 1fr;gap:30px}.footer-grid{display:contents}}
@media(max-width:650px){.faq-layout{padding-block:54px}.faq-copy h2{font-size:clamp(38px,10vw,54px);margin:22px 0}.faq-copy p{font-size:16px}.faq-filters{gap:8px}.faq-filters button{font-size:14px;padding:10px 14px}.faq-list summary{font-size:17px;padding:18px 16px;gap:12px}.faq-list summary span{width:32px;height:32px}.faq-list details p{padding:0 16px 20px;font-size:15px}.footer-inner{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.footer-brand,.footer-contact{grid-column:1/-1}.footer-brand p{max-width:320px}.footer-contact{border-top:1px solid rgba(105,213,255,.12);padding-top:22px}.site-footer{padding-block:34px 24px}.footer-bottom{display:flex;align-items:flex-start}.footer-bottom span{min-width:0}.footer-links{font-size:15px}}

.partner img{object-position:50% 31%;}

#kontakt{padding-block:90px;gap:64px;align-items:center}#kontakt h2{max-width:620px;font-weight:800}#kontakt>.contact-profile{padding:32px;background:linear-gradient(145deg,#142a43,#061827);border:1px solid #35516d;border-radius:28px;min-width:0}#kontakt .partner{gap:24px;margin-top:26px;align-items:center}#kontakt .partner img{width:124px;height:auto;aspect-ratio:764/1359;object-fit:contain;object-position:center;clip-path:none;border-radius:16px;flex:none;background:#aeb1b3}#kontakt .partner strong{font-size:24px;line-height:1.25}#kontakt .partner p{font-size:14px;line-height:1.6;margin-top:10px}#kontakt .contact-profile>p{font-size:17px;line-height:1.7;margin:24px 0 0}#kontakt .contact-email{font-size:16px;margin-top:24px}#kontakt .contact-email a{border-bottom:1px solid #51708d;padding-bottom:3px}#kontakt .note{max-width:580px;color:#94adbf;font-size:13px;line-height:1.7}
@media(max-width:900px){#kontakt{gap:32px;padding-block:65px}#kontakt .contact-profile{max-width:680px}}
@media(max-width:650px){#kontakt{padding-block:54px}#kontakt>.contact-profile{padding:24px 20px;border-radius:22px}#kontakt .partner{gap:18px}#kontakt .partner img{width:104px}#kontakt .partner strong{font-size:21px}#kontakt .contact-profile>p{font-size:16px}#kontakt .actions{flex-direction:column}#kontakt .btn{width:100%;text-align:center}#kontakt .partner>div{min-width:0}}

.site-footer{padding:44px 24px 22px}.footer-inner{grid-template-columns:1.4fr 1fr 1fr;column-gap:64px;row-gap:26px}.footer-brand h3{color:#f4f8fc}.footer-grid h4{margin-bottom:14px}.footer-links{gap:9px}.footer-details{padding:14px 0;border-top:1px solid rgba(105,213,255,.12);font-size:13px}.footer-details p{margin:12px 0 0}.footer-bottom{gap:14px;padding-top:18px;flex-wrap:wrap}.footer-main-link{font-size:14px;color:#94adbf}.footer-bottom>span{flex:1;font-size:13px}.footer-main-link a:hover{color:#91c8f5}.top-button{width:40px;height:40px;font-size:21px}
@media(max-width:900px){.footer-inner{grid-template-columns:1.25fr 1fr 1fr;gap:28px}.footer-brand strong{font-size:14px}.footer-contact .footer-mail{font-size:14px}}
@media(max-width:650px){.site-footer{padding:32px 16px 20px}.footer-inner{grid-template-columns:1fr 1fr;gap:25px}.footer-brand{grid-column:1/-1}.footer-contact{grid-column:auto;border:0;padding:0}.footer-bottom{display:grid;grid-template-columns:1fr auto}.footer-main-link{grid-column:1/-1}.footer-bottom>span{font-size:12px}.footer-contact p{font-size:14px}.footer-contact .footer-mail{overflow-wrap:anywhere}}

.footer-details{border-top:0;padding:8px 0 0}.footer-details p{max-width:980px;font-size:13px;line-height:1.8;color:#94adbf}.footer-legal{display:flex;gap:20px;align-items:center;color:#7896aa;font-size:13px}.footer-legal a:hover{color:#91c8f5}.footer-bottom{padding-top:18px}.footer-main-link{flex-basis:100%}.footer-details summary{font-size:13px}
@media(max-width:650px){.footer-legal{grid-column:1/-1;flex-wrap:wrap;gap:14px}.footer-bottom .top-button{grid-column:2;grid-row:2}.footer-details p{font-size:13px}}

/* Unified typography based on JacobRytter.dk's reference sections. */
body{font-family:Manrope,sans-serif;font-size:16px;line-height:1.65;font-weight:400}button,input,textarea,select{font-family:inherit}h1,h2,h3,.brand,.footer-mark,.footer-grid h4,.partner strong{font-family:Syne,sans-serif;font-weight:700}h1{font-size:clamp(48px,5.9vw,80px);line-height:1.04;letter-spacing:-.055em}h2,#kontakt h2{font-size:clamp(34px,4.2vw,56px);line-height:1.08;letter-spacing:-.045em;font-weight:700}h3,.card h3{font-size:23px;line-height:1.25;letter-spacing:-.02em;font-weight:700}.modules h3{font-size:20px}.faq-copy h2{font-size:clamp(42px,5vw,74px);font-weight:700}.eyebrow{font-family:Manrope,sans-serif;font-size:12px;font-weight:800;letter-spacing:.16em;line-height:1.5}.lead{font-size:19px;line-height:1.65}.card p,.modules p{font-size:16px;line-height:1.65}.links,.btn{font-family:Manrope,sans-serif;font-size:14px;font-weight:700}.faq-list summary{font-family:Manrope,sans-serif;font-size:18px;font-weight:800}.faq-list details p{font-size:16px;line-height:1.65}.footer-brand h3{font-family:Syne,sans-serif;font-size:20px;font-weight:700;line-height:1.25}.footer-brand strong{font-family:Manrope,sans-serif;font-size:13px;font-weight:800}.footer-brand p,.footer-links,.footer-contact p,.footer-contact .footer-mail{font-family:Manrope,sans-serif;font-size:14px;line-height:1.65}.footer-grid h4{font-size:13px;letter-spacing:.08em}.footer-details summary,.footer-details p,.footer-bottom>span,.footer-legal,.footer-main-link{font-family:Manrope,sans-serif;font-size:13px;line-height:1.7}.partner strong{font-size:24px}.brand{letter-spacing:-.02em}
@media(max-width:650px){h1{font-size:clamp(40px,10vw,60px)}h2,#kontakt h2{font-size:clamp(32px,8vw,44px)}.faq-copy h2{font-size:clamp(38px,10vw,54px)}.lead{font-size:17px}.faq-list summary{font-size:16px}.card h3{font-size:22px}.modules h3{font-size:19px}.partner strong{font-size:21px}.footer-brand h3{font-size:20px}}

.visit-counter{display:inline-flex;align-items:center;gap:14px;border:1px solid #385466;border-radius:999px;padding:10px 20px;color:#a8bac8;white-space:nowrap}.visit-counter strong{color:#93c3eb;font-size:1.25em}.footer-bottom{flex-wrap:wrap}

/* Consistent image sizing and responsive controls. */
.service-img{display:block;height:auto;aspect-ratio:1.55;clip-path:none}
.hero-img{display:block;clip-path:none;border-radius:18px}
header{background:#0c1c2e}
.brand:before{content:'AI'}
@media(max-width:900px){.hero{padding-bottom:28px}.hero-img,.service-img{height:auto;max-height:none;aspect-ratio:1.9;object-fit:cover;object-position:center;border-radius:18px}.service-img{border-radius:0}.links{top:100%}.modules{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.flags a{width:36px;height:36px}.menu{min-height:44px}.modules{grid-template-columns:1fr}.footer-bottom .visit-counter{grid-column:1/-1;justify-self:start}.btn{text-align:center}.hero .actions{flex-direction:column}.hero .btn{width:100%}}
@media(max-width:360px){header>nav{gap:6px}.brand{font-size:13px}.flags a{width:32px;height:32px}}
